session_name

(PHP 4, PHP 5, PHP 7, PHP 8)

session_nameObtém e/ou define o nome da sessão atual

Descrição

session_name(?string $name = null): string|false

session_name() retorna o nome da sessão atual. Se name for informado, session_name() irá atualizar o nome da sessão e retornar o nome da sessão antiga.

Se um novo nome de sessão for informado no parâmetro name, session_name() modificará o cookie HTTP (e exibir o conteúdo quando session.use_trans_sid estiver habilitado). Assim que o cookie HTTP tiver sido enviado, chamar session_name() gerará um E_WARNING. session_name() deve ser chamada antes de session_start() para a sessão funcionar apropriadamente.

O nome da sessão é redefinido para o padrão guardado em session.name na inicialização da requisição. Por isso, deve-se chamar session_name() para cada requisição (e antes que session_start() seja chamada).

Parâmetros

name

O nome da sessão, que é usado em cookies e URLs (por exemplo, PHPSESSID). Ele deve conter apenas caracteres alfanuméricos; deve ser curto e descritivo (para usuários com avisos de cookie habilitados). Se name for informado e diferente de null, o nome da sessão atual será modificado para o novo valor.

Warning

O nome da sessão não pode consistir apenas de dígitos, pelo menos uma letra deve estar presente. Caso contrário um novo ID de sessão é gerado toda vez.

Valor Retornado

Retorna o nome da sessão atual. Se name for informado e a função atualizar o nome da sessão, o nome da sessão antiga será retornado, ou false em caso de falha.

Registro de Alterações

Versão Descrição
8.0.0 name é anulável agora.
7.2.0 session_name() verifica status de sessão; anteriormente, apenas verificava status de cookie. Portanto, a versão antiga de session_name() permitia chamar session_name() após session_start(), que poderia travar o PHP e resultar em comportamento inesperado.

Exemplos

Example #1 Exemplo de session_name()

<?php

/* define o nome da sessão para WebsiteID */

$previous_name = session_name("WebsiteID");

echo "O nome da sessão anterior era $previous_name<br />";
?>

Veja Também