PHP - função session_id ()
Definição e Uso
Sessões ou tratamento de sessão é uma maneira de disponibilizar os dados em várias páginas de um aplicativo da web. osession_id() função é usada para definir ou recuperar um id personalizado para o atual.
Sintaxe
session_id([$id]);
Parâmetros
Sr. Não | Parâmetro e Descrição |
---|---|
1 |
name(Optional) Este é um valor de string que representa o id da sessão, se você deseja definir o id da sessão usando este método. |
Valores Retornados
Isso retorna uma string representando o id da sessão atual (se houver) ou, uma string vazia se a sessão atual não tiver nenhum id.
Versão PHP
Esta função foi introduzida pela primeira vez no PHP Versão 4 e funciona em todas as versões posteriores.
Exemplo 1
O exemplo a seguir demonstra o uso do session_id() função.
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php
//Starting the session
session_start();
$id = session_id();
print("Session Id: ".$id);
?>
</body>
</html>
Ao executar o arquivo html acima, será exibida a seguinte mensagem -
Session Id: b9t3gprjtl35ms4sm937hj7s30
Exemplo 2
A seguir está outro exemplo desta função, aqui temos duas páginas do mesmo aplicativo na mesma sessão.
session_page1.htm
<?php
if(isset($_POST['SubmitButton'])){
//Starting the session
$id = session_create_id();
session_id($id);
print("\n"."Id: ".$id);
session_start();
$_SESSION['name'] = $_POST['name'];
$_SESSION['age'] = $_POST['age'];
session_commit();
}
?>
<html>
<body>
<form action="#" method="post">
<label for="fname">Enter the values click Submit and click on Next</label>
<br><br><label for="fname">Name:</label>
<input type="text" id="name" name="name"><br><br>
<label for="lname">Age:</label>
<input type="text" id="age" name="age"><br><br>
<input type="submit" name="SubmitButton"/>
<?php
echo '<br><br /><a href="session_page2.htm">Next</a>';
?>
</form>
</body>
</html>
Isso produzirá a seguinte saída -
Depois de pressionar enviar, a página ficará como -
Ao clicar em Next o seguinte arquivo é executado.
session_page2.htm
<html>
<head>
<title>Second Page</title>
</head>
<body>
<?php
//Session started
session_start();
print("Values from the session with id: ".session_id());
echo "<br>";
print($_SESSION['name']);
echo "<br>";
print($_SESSION['age']);
?>
</body>
</html>
Isso produzirá a seguinte saída -
Values from the session with id: brb9t3gprjtl35ms4sm937hj7s30
Krishna
30
Exemplo 3
Você pode criar um id de sessão personalizado usando esta função conforme mostrado abaixo -
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php
//Creating a custom session id
session_id("my-id");
//Starting the session
session_start();
print("Id: ".session_id());
?>
</body>
</html>
Ao executar o arquivo html acima, será exibida a seguinte mensagem -
Id: my-id