codeigniter
Sitzungen verwenden
Suche…
Bemerkungen
Die Codeigniter Sessions- Klasse verwendet Browser-Cookies, um Daten zu speichern, die über mehrere Seitenladungen hinweg bestehen bleiben.
Referenz: https://codeigniter.com/user_guide/libraries/sessions.html
Sitzung erstellen
Um eine Sitzung zu initialisieren, können Sie sie einfach in Ihren Controller laden, der normalerweise in den Controller-Konstrukten platziert wird. Sie kann jedoch auch automatisch in das Array geladen werden, das sich in application / config / autoload.php befindet:
$this->load->library('session');
Behandlung von Sitzungsdaten
Eine Sitzung ist einfach ein Array, das aus folgenden Benutzerinformationen besteht:
- Die eindeutige Session-ID des Benutzers (dies ist eine statistisch zufällige Zeichenfolge mit sehr starker Entropie, die für die Portabilität mit MD5 gehasht und alle fünf Minuten neu generiert wird)
- Die IP-Adresse des Benutzers
- Die User Agent-Daten des Benutzers (die ersten 120 Zeichen der Browser-Datenzeichenfolge)
- Der Zeitstempel "letzte Aktivität".
Quelle ( was ist Sitzungsdaten )
Sitzungsdaten abrufen
wie die SessionID:
$this->session->userdata('session_id');
Hinweis - Für Codeigniter 3.x können Sie die obige Syntax verwenden, aber das Konzept oder die magischen Getter wurden eingeführt, wo Sie $this->session->session_id
.
Denken Sie daran, dass die userdata()
NULL zurückgibt, wenn das Sitzungselement nicht vorhanden ist.
Alle Sitzungsdaten abrufen
$this->session->all_userdata()
Sitzungsdaten einstellen
Mit der set_userdata()
-Methode können Sie Daten in Ihre Sitzung setzen. Das folgende Beispiel zeigt ein Beispiel-Array, das Sie einfügen möchten:
$newdata = array(
'username' => 'johndoe',
'email' => '[email protected]',
'logged_in' => TRUE
);
$this->session->set_userdata($newdata);
Sie können auch jeweils eine Daten festlegen, zum Beispiel:
$this->session->set_userdata('some_name', 'some_value');
oder
$some_name = 'some_value';
$this->session->set_userdata($some_name);
So entfernen Sie Sitzungs- und Sitzungsdaten
$this->session->unset_userdata('some_name')
Diese Methode akzeptiert auch ein Array von Elementschlüsseln, um die Einstellung aufzuheben:
Für Codeiginter 3.x:
$array_items = array('username', 'email');
$this->session->unset_userdata($array_items);
Für Codeiginter 2.x (diese alte Syntax unterstützt nicht 3.x):
$array_items = array('key' => 'value');
$this->session->unset_userdata($array_items);