PHP setcookie() Funktion

Definition und Verwendung

Die Funktion setcookie() sendet einen HTTP-Cookie an den Client.

Cookies sind Variablen, die vom Server an den Browser gesendet werden. Cookies sind in der Regel kleine Textdateien, die vom Server in das Computer des Benutzers eingebettet werden. Jedes Mal, wenn der Computer über den Browser eine Seite anfordert, wird dieser Cookie gesendet.

Der Name des Cookies wird durch eine Variable mit dem gleichen Namen angegeben. Zum Beispiel, wenn ein gesendeter Cookie den Namen "name" hat, wird automatisch eine Variable $user erstellt, die den Wert des Cookies enthält.

Cookies müssen vor dem Versand anderer Ausgaben zugewiesen werden.

Funktioniert erfolgreich, dann gibt die Funktion true zurück, sonst false.

Syntax

setcookie(name,value,expire,path,domain,secure)
Parameter Beschreibung
name Erforderlich. Bestimmt den Namen des Cookies.
value Erforderlich. Bestimmt den Wert des Cookies.
expire Optional. Bestimmt die Gültigkeitsdauer des Cookies.
path Optional. Bestimmt den Serverpfad des Cookies.
domain Optional. Bestimmt den Domain-Namen des Cookies.
secure Optional. Bestimmt, ob Cookies über eine sichere HTTPS-Verbindung übertragen werden sollen.

Hinweise und Anmerkungen

Anmerkung:Der Wert eines Cookies mit dem Namen "user" kann über $HTTP_COOKIE_VARS["user"] oder $_COOKIE["user"] abgerufen werden.

Anmerkung:Bei der Übermittlung von Cookies wird der Cookie-Wert automatisch URL-kodiert. Bei der Empfangsverarbeitung wird URL-dekodiert. Wenn Sie dies nicht benötigen, können Sie setrawcookie() ersatzweise.

Beispiel

Beispiel 1

Setting and sending a cookie:

<?php
$value = "my cookie value";
// Sending a simple cookie
setcookie("TestCookie",$value);
?>
<html>
<body>
...
...
<?php
$value = "my cookie value";
// Sending a cookie that expires in 24 hours
setcookie("TestCookie",$value, time()+3600*24);
?>
<html>
<body>
...
...

Beispiel 2

Verschiedene Methoden zur Suche nach Cookie-Werten:

<html>
<body>
<?php
// Ausgabe eines bestimmten Cookies
echo $_COOKIE["TestCookie"];
echo "<br />";
echo $HTTP_COOKIE_VARS["TestCookie"];
echo "<br />";
// Ausgabe aller Cookies
print_r($_COOKIE);
?>
</body>
</html>

Ausgabe:

mein Cookie-Wert
mein Cookie-Wert
Array ([TestCookie] => mein Cookie-Wert)

Beispiel 3

// Löschen Sie ein Cookie, indem Sie das Ablaufdatum auf ein vergangenes Datum/Zeit setzen:

<?php
// Setzen Sie das Ablaufdatum auf eine Stunde zurück
setcookie("TestCookie", "", time() - 3600);
?>
<html>
<body>
...
...

Beispiel 4

Erstellen Sie ein Array cookie:

<?php
setcookie("cookie[three]","cookiethree");
setcookie("cookie[two]","cookietwo");
setcookie("cookie[one]","cookieone");
// Ausgabe des Cookies (nach dem Neuladen der Seite)
if (isset($_COOKIE["cookie"]))
  {
  foreach ($_COOKIE["cookie"] as $name => $value)
    {
    echo "\$name : \$value <br />";
    }
  }
?>
<html>
<body>
...
...

Ausgabe:

three : cookiethree
two : cookietwo
one : cookieone