Uma sessão é uma maneira de armazenar informações (in variables) para ser usado em várias páginas.
Ao contrário de um cookie, a informação não é armazenada no computador do usuário.
O que é uma sessão PHP?
Quando você trabalha com um aplicativo, você abri-lo, fazer algumas alterações, e depois fechá-lo. Isto é muito parecido com um Session. O computador sabe quem você é. Ele sabe quando você iniciar o aplicativo e quando você termina. Mas na internet há um problema: o servidor web não sabe quem você é ou o que você faz, porque o endereço HTTP não manter o estado.
As variáveis de sessão resolver este problema armazenando informações de usuário para ser usado em várias páginas (eg username, favorite color, etc) . Por padrão, as variáveis de sessão durar até que o usuário fecha o browser.
Assim; As variáveis de sessão armazenar informações sobre um único usuário, e estão disponíveis para todas as páginas em um único aplicativo.
Dica: Se você precisa de um armazenamento permanente, você pode querer armazenar os dados em um banco de dados .
Iniciar uma sessão PHP
A sessão é iniciada com o session_start() função.
As variáveis de sessão são definidos com a variável global PHP: $ _SESSION.
Agora, vamos criar uma nova página chamada "demo_session1.php" . Nesta página, vamos iniciar uma nova sessão PHP e definir algumas variáveis de sessão:
Exemplo
<?php
// Start the session
session_start();
?>
<!DOCTYPE
html>
<html>
<body>
<?php
// Set session
variables
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"]
= "cat";
echo "Session variables are set.";
?>
</body>
</html>
Exemplo executar » Note: O session_start() função deve ser a primeira coisa em seu documento. Antes de qualquer tags HTML.
Obter Sessão PHP Valores de Variáveis
Em seguida, criamos outra página chamada "demo_session2.php" . A partir desta página, vamos acessar as informações da sessão que estabelecemos na primeira página ("demo_session1.php") .
Observe que sessão de variáveis não são passados individualmente para cada nova página, ao invés disso eles são recuperados a partir da sessão que abrir no início de cada página ( session_start() ).
Observe também que todos os valores das variáveis de sessão são armazenados no $ _SESSION variável global:
Exemplo
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
// Echo session variables that were set on previous
page
echo "Favorite color is " . $_SESSION["favcolor"]
. ".<br>";
echo "Favorite animal is " . $_SESSION["favanimal"]
. ".";
?>
</body>
</html>
Exemplo executar » Outra forma de mostrar todos os valores de variáveis de sessão para uma sessão de usuário é executar o seguinte código:
Exemplo
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
print_r($_SESSION);
?>
</body>
</html>
Exemplo executar » Como funciona? Como ele sabe que sou eu?
A maioria das sessões definir uma chave de usuário no computador do usuário que é algo como isto: 765487cf34ert8dede5a562e4f3a7e12. Então, quando uma sessão é aberta em outra página, ele verifica o computador para uma chave de usuário. Se houver uma correspondência, ele acessa a sessão, se não, ele inicia uma nova sessão.
Modificar uma variável de sessão PHP
Para alterar uma variável de sessão, apenas substituí-lo:
Exemplo
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
//
to change a session variable, just overwrite it
$_SESSION["favcolor"] =
"yellow";
print_r($_SESSION);
?>
</body>
</html>
Exemplo executar » Destruir uma sessão PHP
Para remover todas as variáveis de sessão globais e destruir a sessão, o uso session_unset() e session_destroy() :
Exemplo
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
//
remove all session variables
session_unset();
// destroy the
session
session_destroy();
?>
</body>
</html>
Exemplo executar »