FuelPHP - Cookie e gestione delle sessioni
Cookiefornisce l'archiviazione dei dati lato client e supporta solo una piccola quantità di dati. Di solito, è di 2 KB per dominio e dipende dal browser.Sessionfornisce l'archiviazione dei dati lato server e supporta una grande quantità di dati. Vediamo come creare cookie e sessioni nell'applicazione web FuelPHP.
Biscotti
FuelPHP fornisce un file Cookieclass per creare un elemento cookie. La classe dei cookie viene utilizzata per creare, assegnare ed eliminare i cookie.
Configura cookie
La classe Cookie può essere configurata globalmente tramite il file di configurazione dell'applicazione principale, situato in fuel / app / config / config.php. È definito come segue.
'cookie' => array (
//Number of seconds before the cookie expires
'expiration' => 0,
//Restrict the path that the cookie is available to
'path' => '/',
//Restrict the domain that the cookie is available to
'domain' => null,
// Only transmit cookies over secure connections
'secure' => false,
// Only transmit cookies over HTTP, disabling Javascript access
'http_only' => false,
),
Metodi
La classe Cookie fornisce metodi per creare, accedere ed eliminare un elemento cookie. Sono i seguenti:
impostato()
Il metodo set viene utilizzato per creare una variabile Cookie. Contiene i seguenti argomenti,
$name - La chiave nell'array $ _COOKIE.
$value - Il valore del cookie.
$expiration - Numero di secondi per cui il cookie dovrebbe durare.
$path - Il percorso sul server in cui il cookie sarà disponibile.
$domain - Il dominio a cui il cookie è disponibile.
$secure - Impostare su true se si desidera trasmettere i cookie solo su connessioni protette.
$httponly - Consenti solo la trasmissione di cookie su HTTP, disabilitando l'accesso a JavaScript.
Cookie::set('theme', 'green');
ottenere()
Il metodo get viene utilizzato per leggere una variabile Cookie. Contiene i seguenti argomenti,
$name - La chiave nell'array $ _COOKIE.
$value - Il valore da restituire se la chiave non è disponibile nell'array $ _COOKIE.
Cookie::get('theme');
Elimina()
Il metodo delete viene utilizzato per eliminare una variabile Cookie. Contiene i seguenti argomenti,
$name - La chiave nell'array $ _COOKIE.
$value - Il valore del cookie.
$domain - Il dominio a cui il cookie è disponibile.
$secure - Impostare su true se si desidera trasmettere i cookie solo su connessioni protette.
$httponly - Consenti solo la trasmissione di cookie su HTTP, disabilitando l'accesso a JavaScript.
Cookie::delete('theme');
Sessione
FuelPHP offre classe, Session per mantenere lo stato dell'applicazione.
Configura sessione
La classe di sessione può essere configurata tramite l'apposito file di configurazione, fuel/core/config/session.php. Alcune delle voci di configurazione importanti sono le seguenti:
auto_initialize - Inizializza automaticamente la sessione.
driver- Nome del driver di sessione. La sessione viene implementata utilizzando il driver e le opzioni possibili sono cookie, db, memcached, redis e file. Il driver predefinito è cookie.
match_ip - Controlla l'IP del client.
match_ua - Controlla l'agente utente del client.
expiration_time - Valore di timeout della sessione in secondi.
rotation_time - È ora di rinnovare la sessione.
Metodi di sessione
La classe Session fornisce metodi per manipolare i dati della sessione. Sono i seguenti,
esempio()
Il instance restituisce un'istanza predefinita o specifica, identificata dal nome.
$session = Session::instance(); // default instance
$session = Session::instance('myseesion'); // specific instance
impostato()
Il set viene utilizzato per assegnare una variabile di sessione.
Session::set('userid', $userid);
ottenere()
Il get metodo consente di recuperare le variabili memorizzate dalla sessione.
$userid = Session::get('userid');
Elimina()
Il delete consente di eliminare una variabile di sessione memorizzata.
Session::delete('userid');
creare()
Il createmetodo consente di creare una nuova sessione. Se una sessione è già presente, verrà distrutta e verrà creata una nuova sessione.
Session::create();
distruggere()
Il destroy viene utilizzato per distruggere una sessione esistente.
Session::destroy();
leggere()
Il read metodo ti permette di leggere una sessione.
Session::read();
Scrivi()
Il write metodo ti permette di scrivere la sessione.
Session::write();
chiave()
Il keymetodo consente di recuperare gli elementi della chiave di sessione. Il valore della chiave è unico.
$session_id = Session::key('session_id');