Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der Sitzungstechnologie Cookie in PHP

Detaillierte Erläuterung der Sitzungstechnologie Cookie in PHP

小云云
小云云Original
2018-03-31 09:49:182038Durchsuche


In PHP beträgt der maximale Lebenszyklus aller Daten (Variablen, Konstanten, globale Variablen) einen Skriptzyklus (d. h.: Der Browser sendet eine Anfrage an den Server ---> Server Reagieren Sie auf die Anfrage und übergeben Sie die Anfrage zur Verarbeitung an PHP ----> PHP gibt sie nach der Verarbeitung an den Server zurück ---> Der Server gibt sie an den Browser zurück. Wenn der Browser erneut eine Anfrage stellt, werden alle vorherigen Daten ungültig.

Bei vielen Vorgängen, wie z. B. Benutzeranmeldevorgängen, kann der Benutzer jedoch nach erfolgreicher Anmeldung das Backend direkt verwalten, ohne bei einer erneuten Anfrage ein Kennwort einzugeben. Wenn sich der Benutzer gleichzeitig nicht anmeldet oder sich nicht anmeldet, kann er nicht direkt über die Hintergrund-URL darauf zugreifen. Hierzu sind Daten erforderlich, die den Anmeldestatus des Benutzers aufzeichnen können, sodass diese in mehreren Skriptzyklen verwendet werden können. --------Dieser skriptübergreifende Datenspeichermechanismus wird als Sitzungstechnologie bezeichnet.

COOKIE-Sitzungstechnologie ---Technologie, die es serverseitigen Skripten ermöglicht, Daten auf der Browserseite zu speichern

Grundsatz: 1. Bei der Beantwortung einer Anfrage kann der Server Anweisungen an den Browser senden, um die im Browser gespeicherten Cookie-Daten zu verwalten.

2. Wenn der Browser von einem Server gesetzte Cookie-Daten gespeichert hat, überträgt er bei dieser Anfrage automatisch die gespeicherten Cookie-Daten an den Server.


Verwendung:

1. Cookies im Server setzen (hinzufügen, löschen, ändern und prüfen):

SetCookie (Schlüssel, Wert); legen Sie über den Schlüssel (Schlüssel)-Wert (Wert) den


fest, z. B.: SetCookie ('name', 'li') ; die Cookie-Daten erhöhen


                                                                                                                                                                                                                                                             .

SetCookie ('name'); oder setcookie ('name', '') oder setcookie ('name', 'li', time ()-1); $ _Cookie ['Key']; Sie können die vom Browser auf der Serverseite übergebenen Cookie-Daten abrufen und deren Wert ist value.

2. Gültigkeit:

In der Funktion setcookie() gibt zusätzlich zu den ersten beiden Name-Wert-Einstellungen der dritte Parameter an, dass es sich um eine gültige Zeit handelt.

setcookie('name','Li',time()+60); Der dritte Parameter wird anhand eines Zeitstempels berechnet, daher bedeutet time()+60, dass er 60 Sekunden nach der Erstellung abläuft.

Der standardmäßige Gültigkeitszeitraum ist das Ende des Sitzungszeitraums (der Browser ist geschlossen), auch als temporäres Cookie bekannt.


<?php
setcookie(&#39;name&#39;,&#39;Li&#39;);
var_dump($_COOKIE[&#39;name&#39;]);

Auf der ersten Anfrage stehen keine Cookie-Daten, sondern der Browser In der Cookie-Tabelle auf der Clientseite gibt es Cookie-Daten mit dem Namen „Name“, sodass man sagen kann, dass die Daten nach der Antwort auf der Browserseite gespeichert werden. Die Ablaufzeit im Ergebnis kann als „Sitzung“ ohne Einstellung angesehen werden. Beim Schreiben eines Skripts wird dieselbe Browseranforderung verwendet:


Daher werden die Cookie-Daten automatisch an den Server übermittelt, wenn der Browser sie erneut anfordert.
var_dump($_COOKIE[&#39;name&#39;]);//该文件为cookie_2.php

3. Gültige Pfade

Standardmäßig sind Cookies im aktuellen Pfad und in den untergeordneten Pfaden gültig. Wenn der Browser eine Anfrage stellt, sucht er zunächst im aktuellen Verzeichnis nach gültigen Cookies, sucht dann nach oben und überträgt alle gültigen Cookies an den Server.

Kann über den vierten Parameter von setcookie() geändert werden; wird normalerweise auf „/“ gesetzt, um anzugeben, dass die Site im neuen Verzeichnis gültig ist, d. h. die gesamte Site ist gültig.


4. Gültige Domain

Bezieht sich auf den Bereich, in dem Cookie-Daten angewendet werden können. Der Standardwert ist: nur gültig unter dem aktuellen Domainnamen. Es kann jedoch über den fünften Parameter eingestellt werden.

Zum Beispiel: www.qq.com//wobei qq.com der Domänenname der ersten Ebene ist.

www.wx2.qq.com //wx2.qqq.com ist ein subdometischer Name unter diesem Domänennamen erster Ebene.

Wenn der vierte Parameter oben nicht festgelegt ist, ist die Standardanfrage nur unter dem Domänennamen der ersten Ebene und nicht unter dem Subdomänennamen gültig.


Dies sind die Cookie-Daten, die im IE-Browser vorhanden sind.

Wir können feststellen, dass es die Domäne verwendet, um verschiedene Zugriffe zu unterscheiden, und sein Pfad „/“ ist, was bedeutet, dass alle Site-Verzeichnisse gültig sind, und „expirs“ bedeutet die Ablaufzeit.

5. Ob nur die Übertragung gesichert werden soll (https://.....gibt das verschlüsselte HTTP-Protokoll an)

Durch Setzen des sechsten Parameters von setcookie() auf true können Sie die Option aktivieren die Option „Nur sichere Übertragung“. Nach dem Einschalten werden die Cookie-Daten nur dann an den Server übertragen, wenn https://.... angefordert wird. Der Standardwert „false“ bedeutet, dass die sichere Übertragung nicht aktiviert ist, d. h. die Cookie-Daten können von allen Anforderungsmethoden abgerufen werden.

6.HTTPONLY

Indem Sie den siebten Parameter von setcookie() auf true setzen, können Sie die Option HTTPONLY aktivieren, was bedeutet, dass Cookie-Daten nur bei HTTP-Anfragen abgerufen werden können , und Die aktuellen Cookie-Daten können nicht über Skripte wie Javascript abgerufen werden.

Hinweis: 1. Der Cookie-Wert unterstützt nur den String-Typ (numerische Daten können vor dem Festlegen in einen String konvertiert werden).

2. Der Cookie-Schlüssel kann in Form eines Array-Index geschrieben werden.

setcookie('student[name]','Li');

setcookie('student[gender]','Male');

Hier gibt es immer zwei Cookies (ob beim Speichern oder beim Anfordern), aber während der Testphase hat PHP sie in einem Array organisiert.

Verwandte Empfehlungen:


Zusammenfassung von Beispielen für Sitzungstechnologien COOKIE und SESSION

PHP Basic Tutorial Nr. 17 Sitzungstechnologie COOKIE, SESSION

Beispiele für Cookies für PHP-Sitzungstechnologie

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Sitzungstechnologie Cookie in 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
Vorheriger Artikel:PDO in PHPNächster Artikel:PDO in PHP