Heim  >  Artikel  >  Backend-Entwicklung  >  Vergleichende Einführung in SESSION und COOKIE unter PHP

Vergleichende Einführung in SESSION und COOKIE unter PHP

jacklove
jackloveOriginal
2018-05-22 11:44:541450Durchsuche

Beim Caching werden Sie auf viele Probleme stoßen. In diesem Artikel werden SESSION und COOKIE verglichen.

[Cookie]

1. Wird im Browser gespeichert, auch wenn der Browser geschlossen oder die Verbindung unterbrochen wird.

2. Lebenszyklus -> Standardmäßig wird während der Browsersitzung (Daten werden im Speicher gespeichert) der Gültigkeitszeitraum festgelegt und die Daten werden auf der Festplatte gespeichert

3 Pfad -> Sie müssen den effektiven Pfadpfad festlegen. Der Standardpfad ist der aktuelle Pfad. Wenn alle Pfade den Pfad auf „/“ festlegen müssen;

4. Legen Sie den Domänennamen fest Domäne, die angibt, dass der Pfad unter dem Domänennamen gültig ist und der Standardpfad der aktuelle Domänenname ist;

5 Cookie-Löschung-> -1);

6. Wann wird das Cookie wirksam? Nach der Funktion setcookie() wird der Client benachrichtigt, wenn er die nächste Seite nicht aktualisiert oder durchsucht , der Client gibt das Cookie nicht zurück;

7. Anzahl der Cookies -> Ein Browser unterstützt bis zu 30 Cookies, und die Kapazität der Cookies darf 4 KB nicht überschreiten, und die Anzahl der für jede Website festgelegten Cookies kann nicht überschritten werden 20 überschreiten;

【Sitzung】

1. Verwendung -> Vor der Verwendung eine Sitzungs-ID erstellen oder laden.

-> Von dem Zeitpunkt an, an dem der Benutzer auf die Seite zugreift, bis zu dem Zeitpunkt, an dem er die Website verlässt, wird automatisch eine SESSION-ID generiert, um die Beziehung des aktuellen Benutzers zu anderen Benutzern darzustellen;

3 -> Wenn die Verbindung nicht getrennt ist, können Daten zwischen verschiedenen Seiten übertragen werden. In der PHP-Umgebung ist es komplizierter Dies bedeutet, dass der Speicherpfad gemäß der Konfigurationsdatei konfiguriert und der Dateiname entsprechend der ID angewiesen wird, eine einzelne Datei zu speichern oder sie hierarchisch zu speichern. Die ursprünglichen Wörter lauten wie folgt:

[plain] view plain copy

Wo werden die SESSION-Daten gespeichert?

Natürlich ist es serverseitig, aber es wird nicht im Speicher gespeichert, sondern in einer Datei oder Datenbank.

Standardmäßig ist die in PHP.ini festgelegte SESSION-Speichermethode Dateien (session.save_handler = Dateien), d. h. das Lesen und Schreiben von Dateien wird zum Speichern von SESSION-Daten und dem Verzeichnis verwendet, in dem SESSION-Dateien gespeichert werden wird durch session.save_path bestimmt. Geben Sie an, dass dem Dateinamen sess_ vorangestellt wird, gefolgt von der SESSION-ID, wie zum Beispiel: sess_c72665af28a8b14c0fe11afe3b59b51b. Die Daten in der Datei sind die SESSION-Daten nach der Serialisierung.

Wenn die Anzahl der Besuche groß ist, können mehr SESSION-Dateien generiert werden. In diesem Fall können Sie ein hierarchisches Verzeichnis zum Speichern von SESSION-Dateien einrichten, was die Effizienz erheblich verbessert. session.save_path="N;/save_path", N ist die Anzahl der Hierarchieebenen, save_path ist das Startverzeichnis.

Beim Schreiben von SESSION-Daten ruft PHP die SESSION_ID des Clients ab und verwendet dann diese SESSION-ID, um die entsprechende SESSION-Datei im angegebenen SESSION-Dateispeicherverzeichnis zu finden. Wenn sie nicht vorhanden ist, erstellen Sie sie Speichern Sie schließlich die Daten und schreiben Sie sie nach der Serialisierung in die Datei [3]. Das Lesen von SESSION-Daten ist ein ähnlicher Vorgang. Die gelesenen Daten müssen deserialisiert und die entsprechende SESSION-Variable generiert werden.

Hinweise:

1. Es kann keine Ausgabe erfolgen, bevor die Funktion session_start() verwendet wird.

2. Die Sitzung wird nicht gelöscht, da der Browser geschlossen ist. Die standardmäßige Ablaufzeit von Cookies mit Sitzungs-IDs ist jedoch auf Sitzungsebene festgelegt. Das heißt, wenn der Benutzer den Browser schließt, geht die auf dem Client gespeicherte Sitzungs-ID verloren, die auf dem Server gespeicherten Sitzungsdaten werden jedoch nicht sofort gelöscht. Vom Client, also vom Browser, scheint die Sitzung gelöscht worden zu sein (da wir die Sitzungs-ID verloren haben und die ursprünglichen Sitzungsdaten nicht finden können).

In diesem Artikel wird der Unterschied zwischen SESSION und COOKIE erläutert. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

Erfahren Sie, wie Sie die Client-IP in PHP erhalten


Detaillierte Erläuterung der Verwendung von Session in php


Einführung in die Unterschiede zwischen die(), exit() und return in PHP

Das obige ist der detaillierte Inhalt vonVergleichende Einführung in SESSION und COOKIE unter PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn