PHP - funzione session_name ()
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_name() funzione viene utilizzata per denominare la sessione corrente o per recuperare il nome della sessione.
Sintassi
session_name([$name]);
Parametri
Suor n | Parametro e descrizione |
---|---|
1 | name(Optional) Questo è un valore stringa che rappresenta il nome della sessione, se si desidera impostare il nome della sessione utilizzando questo metodo. |
Valori restituiti
Se non hai passato alcun parametro, questa funzione restituisce un valore stringa che rappresenta il nome della sessione corrente. Se è stato passato un valore stringa per impostare il nome sulla sessione corrente, utilizzando questa funzione viene restituito il nome della vecchia sessione.
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_name() funzione.
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php
//Starting the session
session_start();
$name = session_name();
print("Session Name: ".$name);
?>
</body>
</html>
Uno che esegue il file html sopra mostrerà il seguente messaggio:
Session Name: PHPSESSID
Esempio 2
Di seguito è riportato un altro esempio di questa funzione, qui abbiamo due pagine della stessa applicazione nella stessa sessione -
session_page1.htm
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
if(isset($_POST['SubmitButton'])){
//Setting the session name
session_name("my_session");
//Starting the session
session_start();
$_SESSION['name'] = $_POST['name'];
$_SESSION['age'] = $_POST['age'];
print("<br><br>Session name: ".session_name());
}
echo '<br><br><a href="session_page2.htm">Next</a>';
?>
</form>
</body>
</html>
Questo produrrà il seguente output:
Una volta premuto invia, la pagina sarà come:
Facendo clic su Next viene eseguito il file seguente.
session_page2.htm
<html>
<head>
<title>Second Page</title>
</head>
<body>
<?php
//Changing the session name again
$s_name = session_name();
//Starting a Session
session_start();
print($_SESSION['name']);
echo "<br><br>";
print($_SESSION['age']);
echo "<br><br>";
print("Previous Session Name: ".$s_name);
?>
</body>
</html>
Questo produrrà il seguente output:
Krishna
30
Previous Session Name: PHPSESSID
Esempio 3
È possibile impostare il nome della sessione personalizzato utilizzando questa funzione come mostrato di seguito:
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php
//Starting the session
session_start();
$id = session_create_id("test-");
print("Id: ".$id);
?>
</body>
</html>
Quando si esegue il file html sopra, verrà visualizzato il messaggio seguente.
Id: test-es6j8171lluesjrokpvqqb4b4d