Heim  >  Artikel  >  Backend-Entwicklung  >  So löschen Sie Cookies in PHP

So löschen Sie Cookies in PHP

藏色散人
藏色散人Original
2021-07-05 10:59:354812Durchsuche

Die Möglichkeit, Cookies in PHP zu löschen, besteht darin, die Gültigkeitsdauer dieses Cookies auf vor der aktuellen Zeit festzulegen. Der Implementierungscode lautet beispielsweise „setcookie(‘test‘,time() – 3600);“.

So löschen Sie Cookies in PHP

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Wie lösche ich Cookies mit PHP? PHP kann COOKIE nicht löschen? Gültigkeitsdauer für Cookies festlegen

PHP unterstützt transparent HTTP-Cookies. Cookies sind ein Mechanismus, der Daten auf der Remote-Browserseite speichert und zur Verfolgung und Identifizierung von Benutzern verwendet. Cookies können mit den Funktionen setcookie() oder setrawcookie() gesetzt werden. Cookies sind Teil des HTTP-Headers, daher muss die Funktion setcookie() aufgerufen werden, bevor andere Informationen an den Browser ausgegeben werden, was den Einschränkungen für den Header ähnelt ()-Funktion.

setcookie();

Die Möglichkeit, ein Cookie zu löschen, besteht darin, die Gültigkeitsdauer dieses Cookies auf vor der aktuellen Zeit festzulegen.

setcookie('test', 'true', time() + 300); // 创建 cookie
//setcookie('test',time() - 3600 );  // 清除建立的 cookie
//setcookie('test'); //只是将 $_COOKIE['test'] 的值清空
如果直接setcookie('test', '');
echo '
';
print_r($_COOKIE); //attay();

Sie werden feststellen, dass das Array $_COOKIE leer ist, nicht nur $_COOKIE['test'] ist leer winsock fängt das Paket ein und beobachtet die Rückgabe. Der

http-Header lautete: set-cookie:test=deleted; Expires=Mo, 29-May-2014 10:22:15 GMT

Login:

setcookie('username', 'zhangsan', time()+1000, "/php100");

Exit:

setcookie('username', '', time()-3600);

Beim Beenden im IE gibt es kein Problem beim Herunterladen, aber beim Testen in Firefox ist die Anmeldung normal und kann nicht beendet werden. Nach dem Test habe ich festgestellt, dass der vierte Parameter (legaler Pfadparameter) von setcookie() wurde nicht angegeben, daher sind die beim Anmelden und Abmelden festgelegten Cookie-Pfade unterschiedlich (Firefox ist strenger, was zur Rekonstruktion verschiedener Variablen führt)

Das habe ich dort gefunden Unter IE ist das Abmelden kein Problem, aber beim Testen in Firefox ist die Anmeldung normal und es ist nicht möglich, sich abzumelden. Überprüfen Sie den IE, den Unterschied zwischen Cookie-Datensätzen in Firefox. Nach dem Testen wurde festgestellt, dass der vierte Parameter (legaler Pfad Parameter) von setcookie() wurde nicht angegeben, daher war der Pfad des beim Anmelden und Beenden gesetzten Cookies unterschiedlich (Firefox ist strenger, was zu einem anderen führt. Jede Variable wurde neu erstellt)

Beispiel:

$value = 'something';
setcookie('TestCookie', $value, time() + 3600);
setcookie('mytest', $value, time() + 3600, "~rasmus", ".maoge.com", 1);
if (isset($_COOKIE['TestCookie']))
{
echo 'TestCookie :' . $_COOKIE['TestCookie'];
}

Empfohlene Studie: „

PHP-Video-Tutorial

"

Das obige ist der detaillierte Inhalt vonSo löschen Sie Cookies 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