Gestione della sessione in PHP

La gestione della sessione in PHP consente di mantenere dati tra diverse richieste da parte dello stesso utente.

PHP di Gabriele Romanato

La gestione della sessione in PHP consente di mantenere dati tra diverse richieste da parte dello stesso utente. Ciò è particolarmente utile per autenticazione, carrelli della spesa, e altre funzionalità che richiedono persistenza dei dati.

Inizializzazione della sessione

Per iniziare una sessione in PHP, si utilizza la funzione session_start(). Questa funzione deve essere chiamata prima di qualsiasi output HTML.

<?php
session_start();
?>

Salvataggio dei dati nella sessione

I dati vengono salvati nella superglobale $_SESSION, che è un array associativo. Puoi salvare qualsiasi tipo di dato serializzabile.

<?php
$_SESSION['username'] = 'MarioRossi';
$_SESSION['logged_in'] = true;
?>

Lettura dei dati dalla sessione

Una volta che i dati sono stati salvati nella sessione, possono essere recuperati in qualsiasi script successivo, purché session_start() venga chiamato.

<?php
session_start();
echo $_SESSION['username'];
?>

Verifica dell'esistenza di variabili di sessione

È buona pratica verificare se una variabile di sessione è impostata prima di utilizzarla.

<?php
if (isset($_SESSION['logged_in']) && $_SESSION['logged_in'] === true) {
    echo "Utente autenticato.";
} else {
    echo "Utente non autenticato.";
}
?>

Distruzione della sessione

Per terminare una sessione e rimuovere tutti i dati associati, si usa session_destroy(). Inoltre, è consigliabile eliminare anche il cookie della sessione.

<?php
session_start();
session_unset();
session_destroy();
setcookie(session_name(), '', time() - 3600, '/');
?>

Conclusione

La gestione delle sessioni in PHP è uno strumento essenziale per la creazione di applicazioni web dinamiche. Con poche semplici funzioni, è possibile mantenere lo stato dell'utente in modo sicuro e persistente tra diverse pagine.

Commenti