PHP - função session_start ()
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_start() função é usada para iniciar uma nova sessão ou retomar uma existente.
Sintaxe
session_start([$options]);
Parâmetros
Sr. Não | Parâmetro e Descrição |
---|---|
1 |
array(Optional) Esta é uma matriz que representa um conjunto de opções de sessão. |
Valores Retornados
Esta função retorna um valor booleano que é TRUE se a sessão foi iniciada com sucesso e FALSE se não teve sucesso.
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_start() função.
<?php
//Starting the session
session_start();
if( isset( $_SESSION['counter'] ) ) {
$_SESSION['counter'] += 1;
} else {
$_SESSION['counter'] = 1;
}
$msg = "You have visited this page ". $_SESSION['counter'];
$msg .= "in this session.";
?>
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php echo ( $msg ); ?>
</body>
</html>
Ao executar o arquivo html acima, será exibida a seguinte mensagem -
You have visited this page 1 times in this session.
O número na mensagem muda constantemente com base no número de vezes que você atualiza a página sem fechar o navegador. Por exemplo, se você atualizar 10 vezes, a mesma página exibirá a seguinte mensagem.
You have visited this page 16 times in this session.
Exemplo 2
A seguir está outro exemplo dessa 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
session_start();
$_SESSION['name'] = $_POST['name'];
$_SESSION['age'] = $_POST['age'];
}
?>
<html>
<body>
<form action="#" method="post">
<br?> <label for="fname">Enter the values click Submit and click on Next</label?> <label for="fname"?>Name:</label>
<input type="text" id="name" name="name"><br><br>
<label for="lname"?>Age:
<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 -
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($_SESSION['name']);
echo "<br>";
print($_SESSION['age']);
?>
</body>
</html>
Isso produzirá a seguinte saída -
Krishna
30
Exemplo 3
Você pode passar array opcional para esta função conforme mostrado abaixo -
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php
//Starting the session
$options = ['cookie_lifetime' => 86400,'read_and_close' => true];
session_start($options);
?>
</body>
</html>