Gestione della sessione in PHP
IL session_start () La funzione viene utilizzata per creare una nuova sessione per l'utente. Il nome della sessione predefinito è PhpSessid e viene utilizzato per verificare che la sessione esista o no. Se non vengono rilevate informazioni sui cookie o sulla sessione, verrà generata una nuova sessione per l'utente, altrimenti la sessione corrente verrà utilizzata per l'utente.
Impostazione del timeout della sessione
Il limite di timeout della sessione può essere impostato impostando il valore di due direttive in PHP.ini file o utilizzando la funzione ini_set () nello script PHP. Le direttive sono riportate di seguito.
Viene utilizzato per impostare il limite di tempo in pochi secondi per archiviare le informazioni sulla sessione nel server a lungo.
Viene utilizzato per impostare il limite di tempo di scadenza per il cookie PhpSessid.
Imposta il timeout della sessione in PHP
I modi per impostare il valore di timeout della sessione in PHP per la gestione della sessione di un utente sono stati mostrati in questa parte del tutorial utilizzando più esempi.
Esempio-1: imposta il valore di timeout della sessione utilizzando le direttive PHP
Crea un file PHP con il seguente script per conoscere il modo di impostare il timeout della sessione utilizzando le direttive PHP e la gestione delle sessioni in base ai valori della direttiva. IL ini_set () La funzione è stata utilizzata nello script per impostare il valore di sessione.gc_maxlifetime E sessione.cookie_lifetime direttive. La durata della sessione è stata impostata su 2 secondi a scopo di test. La variabile superglobal $ _cookie array è stata utilizzata qui per gestire la sessione. La nuova sessione verrà generata per l'utente quando lo script verrà eseguito nel browser e dopo due secondi la sessione sarà scaduta.
// Imposta il timeout della sessione per 2 secondiProduzione:
Il seguente output apparirà dopo aver eseguito lo script sopra per la prima volta. L'output mostra il nome utente della sessione predefinita, PhpSessid.
Verrà visualizzato il seguente output se la pagina viene aggiornata dopo 2 secondi.
Esempio 2: imposta il valore di timeout della sessione utilizzando $ _Session Array
Crea un file PHP con il seguente script per impostare il valore di timeout della sessione utilizzando la variabile Superglobal PHP, $ _Session. La durata del tempo della sessione è stata impostata su 5 secondi a scopo di test. Successivamente, il tempo di richiesta dell'utente per la pagina è stato archiviato in una variabile denominata $ tempo. Quando la durata del tempo tra il $ tempo La variabile e l'ultima attività dell'utente saranno più di 5 secondi, quindi la sessione corrente dell'utente verrà distrutta e verrà generata una nuova sessione. IL session_unset () E session_destroy () Le funzioni hanno usato nello script per distruggere la sessione.
// Avvia una nuova sessioneProduzione:
Il seguente output apparirà dopo aver eseguito lo script sopra per la prima volta.
Verrà visualizzato il seguente output se la pagina viene aggiornata dopo 5 secondi.
Esempio-3: impostare il valore di timeout della sessione utilizzando la funzione $ _Session e time ()
Crea un file PHP con il seguente script per impostare il valore di timeout di sessione utilizzando la variabile PHP Superglobal, $ _Session, e la funzione PHP integrata, tempo (). La funzione Time () restituisce il valore di timestamp corrente del sistema. La durata della sessione è stata impostata su 600 secondi (10 minuti) nello script.
$ _Session ['start'] è stato utilizzato per archiviare l'orario di inizio della sessione. Quando la durata del tempo tra l'ora corrente e l'ora di inizio della sessione sarà superiore a 10 minuti, la sessione corrente dell'utente verrà distrutta. Le funzioni session_unset () e session_destroy () sono state utilizzate nello script come esempio precedente per distruggere la sessione.
// Avvia una nuova sessioneProduzione:
Il seguente output apparirà dopo aver eseguito lo script sopra per la prima volta. Il messaggio scaduto verrà visualizzato se la pagina viene aggiornata dopo 10 minuti.
Conclusione
In questo tutorial sono stati mostrati tre modi diversi per impostare il valore di timeout della sessione per la gestione di un utente in PHP. Gli utenti PHP riceveranno il concetto di base di implementare la sessione dell'utente utilizzando le variabili $ _Cookie e $ _Session ed essere in grado di applicarlo nel proprio script dopo aver letto questo tutorial.