PHP - funzione session_destroy ()
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_status() restituisce lo stato della sessione corrente.
Sintassi
session_destroy();
Parametri
Questa funzione non accetta alcun parametro.
Valori restituiti
Questa funzione restituisce un valore booleano che è TRUE se la sessione viene distrutta con successo e FALSE altrimenti.
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_destroy() 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.";
if ($_SESSION['counter'] >5){
session_destroy();
echo "Session Destroyed ";
}
?>
<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. Se aggiorni questa pagina più di 5 volte, la sessione verrà distrutta e verrà visualizzato il seguente messaggio.
Session Destroyed You have visited this page 6 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'];
print("Enter the values click Submit and click on Next");
//Destroying the session
session_destroy();
}
?>
<html>
<body>
<form action="#" method="post">
<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>
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>
Di solito, questo programma dovrebbe visualizzare il nome inserito e i valori di età inseriti nella pagina precedente nella stessa sessione di:
Krishna
30
Poiché abbiamo distrutto la sessione nella prima pagina precedente stessa, facendo clic su Avanti verranno visualizzati i seguenti errori.
Notice: Undefined index: name in session_page2.htm on line 9
Notice: Undefined index: age in session_page2.htm on line 11