Variável de sessão não definida
Os dados de sessão específicos podem ser removidos usando a função unset (). A função session_unset () é usada para apagar todos os dados relacionados à sessão de uma sessão específica. O PHP usa a matriz associativa $ _session para manter os dados da sessão.
Sintaxe:
A sintaxe do session_unset () A função deu abaixo.
void session_unset ();É usado para despertar a sessão atual, apagando todos os dados relacionados à sessão da matriz $ _Session. Não retorna nada.
Exemplo 1: variável de sessão não definida
A remoção da sessão usando a função session_unset () mostrou no exemplo a seguir. Crie um arquivo php com o seguinte script Crie uma sessão para os usuários autenticados e verifique um valor da matriz $ _Session depois de destruir a sessão. Um formulário é usado no script para levar o nome de usuário e a senha.
Em seguida, esses valores serão comparados com os valores específicos para verificar a autenticação. Uma sessão será criada usando a função session_start () para o usuário se o nome de usuário e a senha estiverem corretos. Se o usuário visitar a página da web, a sessão será apagada usando a função session_unset () para verificar se a sessão atual será destruída ou não.
// Verifique se o formulário é enviado ou nãoExemplo de sessão não definida
Saída:
A saída a seguir aparecerá após a execução do script acima. O usuário deve fornecer um nome de usuário e senha válidos antes de enviar o formulário. De acordo com o script, o nome de usuário válido é 'admin'E a senha é'segredo'.
A saída a seguir aparecerá se o nome de usuário correto e a senha forem enviadas pelo formulário e uma nova sessão será gerada para o usuário.
A saída a seguir aparecerá se o usuário re-visitar a página novamente. Se a sessão existir para o usuário, o usuário receberá a mensagem, 'bem vindo de volta'E a função session_unset () destruirá a sessão para esse usuário. A mensagem de aviso aparecerá na saída porque a variável da sessão será indefinida após chamar a função session_unset (). Mas esta mensagem de aviso pode ser omitida usando o erro_reporting diretivo.
Destrua a sessão do PHP
A função session_destroy () é usada para destruir todas as variáveis de sessão dos visitantes. Ele apenas destrói os dados da sessão, mas a variável super global PHP, a matriz de $ _Session contém os dados da sessão. Os valores desta matriz serão removidos se o script for encerrado ou o usuário fechar a sessão. A matriz $ _Session pode ser criada inicializando uma matriz vazia.
O cookie phpsessid pode ser mantido no computador do usuário sem dados depois de destruir a sessão se o biscoito do navegador estiver ativado no computador do usuário. Nesse caso, quando o usuário revisitará a página novamente, uma nova sessão será gerada para o usuário, mesmo existe cookie phpsessid. A sintaxe desta função mostrou abaixo.
Sintaxe:
void session_destroy ();Esta função não tem nenhum argumento e não retorna nada.
Exemplo 2: Destruindo sessão usando session_unset ()
A maneira de destruir todos os tipos de informações da sessão usando a função session_unset () mostrou no exemplo a seguir. Crie um arquivo PHP com o seguinte script para criar uma sessão padrão para os visitantes em geral, definir o nome da sessão e a data de validade usando a função setcookie () e imprima o nome da sessão após destruir a sessão usando a função session_unset ().
// Inicie a sessão para o visitanteSaída:
A saída a seguir aparecerá após a execução do script acima. Aqui, a sessão foi criada com o tempo de expiração e destruída posteriormente usando a função session_destroy ().
Conclusão
Duas maneiras de destruir sessões de PHP foram explicadas neste tutorial com exemplos. As funções session_unset () e session_destroy () foram usadas neste tutorial para destruir qualquer sessão existente. O desenvolvedor do PHP pode usar qualquer uma dessas funções para destruir sessões no PHP.