Das HTTP-Protokoll ist zustandslos, daher arbeiten sie mit Cookie- und Sitzungstechnologie zusammen, um einen Zustand aufrechtzuerhalten. Es ist sehr praktisch, Sitzungen in Laravel einzurichten und zu erhalten. Als nächstes werfen wir einen Blick darauf.
Konfiguration
Sitzung wird auf dem Server gespeichert, und die Standardsitzung wird in einer Datei auf dem Server gespeichert. Diese Methode ist jedoch nicht sehr effizient. Derzeit wird die Sitzung häufig in einer Datenbank eines Drittanbieters wie Redis oder Memcached gespeichert. Diese NoSQL-Lese- und Schreibvorgänge sind sehr effizient und einfacher zu verwalten. Sehen wir uns als Nächstes an, wie Laravel die Sitzungskonfigurationsdatei in config/session.php konfiguriert. In dieser Konfigurationsdatei können Sie die Sitzungsspeichermethode, die Gültigkeitszeit usw. konfigurieren.
Wenn Sie die Speichermethode auf Redis konfigurieren müssen, müssen Sie das Treiberkonfigurationselement ändern und es auf Redis ändern. Darüber hinaus werden auch lokaler Speicher (Standard), relationaler Datenbankspeicher usw. unterstützt.
Erhalten Sie den Sitzungswert. Schauen wir uns zunächst an, wie Sie den Sitzungswert erhalten, indem Sie auf die Sitzungsmethode der Instanzanforderung antworten Der zweite Parameter dieser Methode wird zum Festlegen des Standardwerts verwendet. Wenn der entsprechende Sitzungswert nicht abgerufen wird, wird der Standardwert wie folgt zurückgegeben: $request->session()->get('key');
$request->session()->get('key', 'default');
Sie können auch alle Sitzungswerte auf einmal über die All-Methode abrufen, die ein Array zurückgibt:
$request->session()->get('key', function () { return 'default'; });
Laravel bietet auch eine Methode, mit der Sie bequem feststellen können, ob die Sitzung vorhanden ist, indem Sie die has-Methode verwenden.
$request->session()->all();
Es gibt auch eine andere Der Unterschied zwischen der Methode „exists“ und der Methode „has“ besteht darin, dass „has“ existieren und nicht leer sein muss, bevor sie „true“ zurückgibt, während „exist“ „true“ zurückgibt, solange sie existiert.
Sitzungswert festlegen
Es gibt zwei Möglichkeiten, die Sitzung festzulegen:
if ($request->session()->has('key')) {}
Sitzungswert löschen
Sie können die angegebene Sitzung durch Vergessen löschen Methode, und Sie können Flush auch verwenden, um alle Sitzungen zu löschen. Das Folgende ist der Democode:
$request->session()->put('key', 'val'); session(['key1' => 'val1', 'key2' => 'val2']);
Verwandte Empfehlungen: „Laravel-Tutorial“
Das obige ist der detaillierte Inhalt vonCURD-Betrieb der Sitzung in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!