codeigniter
Usando le sessioni
Ricerca…
Osservazioni
La classe Codeigniter Sessions utilizza i cookie del browser per salvare i dati che permarranno su più carichi di pagina.
Riferimento: https://codeigniter.com/user_guide/libraries/sessions.html
Creare una sessione
Per inizializzare una sessione, è sufficiente caricarlo nel controller, che di solito è collocato all'interno dei costrutti del controller, ma può anche essere caricato automaticamente nell'array trovato all'interno dell'applicazione / config / autoload.php:
$this->load->library('session');
Gestire i dati della sessione
Una sessione è semplicemente una matrice costituita dalle seguenti informazioni utente:
- L'ID sessione univoco dell'utente (questa è una stringa statisticamente casuale con entropia molto forte, hash con MD5 per la portabilità e rigenerata (per impostazione predefinita) ogni cinque minuti)
- L'indirizzo IP dell'utente
- Dati dell'agente utente dell'utente (i primi 120 caratteri della stringa di dati del browser)
- L'indicatore di data "ultima attività".
Fonte ( cosa-è-sessione-dati )
Per recuperare i dati della sessione
come il SessionID:
$this->session->userdata('session_id');
Nota: per Codeigniter 3.x, puoi usare la sintassi precedente, ma è stato introdotto il concetto o getter magici, dove puoi usare $this->session->session_id
.
Ricorda che userdata()
restituisce NULL se l'elemento di sessione non esiste.
Per recuperare tutti i dati di sessione
$this->session->all_userdata()
Per impostare i dati della sessione
il metodo set_userdata()
ti permette di impostare i dati nella tua sessione, il seguente esempio dimostra un array di esempio che desideri inserire:
$newdata = array(
'username' => 'johndoe',
'email' => '[email protected]',
'logged_in' => TRUE
);
$this->session->set_userdata($newdata);
Puoi anche impostare un dato alla volta, ad esempio:
$this->session->set_userdata('some_name', 'some_value');
o
$some_name = 'some_value';
$this->session->set_userdata($some_name);
Per rimuovere i dati di sessione e di sessione
$this->session->unset_userdata('some_name')
Questo metodo accetta anche una serie di chiavi elemento da rimuovere:
Per Codeiginter 3.x:
$array_items = array('username', 'email');
$this->session->unset_userdata($array_items);
Per Codeiginter 2.x (questa sintassi legacy non supporta 3.x):
$array_items = array('key' => 'value');
$this->session->unset_userdata($array_items);