PHP - funzione session_start ()
Definizione e utilizzo
Le sessioni o la gestione delle sessioni sono un modo per rendere i dati disponibili su varie pagine di un'applicazione web. Ilsession_start() viene utilizzata per avviare una nuova sessione o riprenderne una esistente.
Sintassi
session_start([$options]);
Parametri
Suor n | Parametro e descrizione |
---|---|
1 |
array(Optional) Questo è un array che rappresenta un insieme di opzioni di sessione. |
Valori restituiti
Questa funzione restituisce un valore booleano che è TRUE se la sessione è iniziata correttamente e FALSE se non riesce.
Versione PHP
Questa funzione è stata introdotta per la prima volta nella versione 4 di PHP e funziona in tutte le versioni successive.
Esempio 1
L'esempio seguente mostra l'utilizzo di session_start() funzione.
<?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>
Uno che esegue il file html sopra mostrerà il seguente messaggio:
You have visited this page 1 times in this session.
Il numero nel messaggio continua a cambiare in base al numero di volte in cui aggiorni la pagina senza chiudere il browser. Ad esempio, se aggiorni 10 volte, la stessa pagina visualizza il seguente messaggio.
You have visited this page 16 times in this session.
Esempio 2
Di seguito è riportato un altro esempio di questa funzione, qui abbiamo due pagine della stessa applicazione nella stessa sessione -
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>
Questo produrrà il seguente output:
Facendo clic su Next viene eseguito il file seguente.
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>
Questo produrrà il seguente output:
Krishna
30
Esempio 3
È possibile passare un array opzionale a questa funzione come mostrato di seguito:
<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>