Neueste Web-Entwicklung Tutorials
 

PHP setrawcookie() Function

<PHP HTTP Referenz

Beispiel

Im folgenden Beispiel wird ein Cookie mit PHP. Das Cookie wird der Name "user" und der Wert wird "John Doe" . Der Cookie-Wert wird nicht URL-codiert. Das Cookie wird nach 30 Tagen verfallen (86400 * 30) . Mit "/" bedeutet , dass das Cookie in gesamter Website verfügbar ist (otherwise, select the directory you prefer) Sie (otherwise, select the directory you prefer) , das (otherwise, select the directory you prefer) :

<?php
$cookie_name = "user";
$cookie_value = "John";
setrawcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
// 86400 = 1 day
?>
<html>
<body>

<?php
echo "Cookie is set.";
?>

</body>
</html>
?>
Führen Sie zB »

Definition und Verwendung

Die setrawcookie() Funktion definiert ein Cookie (without URL encoding) - (without URL encoding) mit dem Rest der HTTP - Header gesendet wird zusammen.

Ein Cookie wird häufig verwendet, um einen Benutzer zu identifizieren. Ein Cookie ist eine kleine Datei, die der Server auf dem Computer des Benutzers einbettet. Jedes Mal, wenn der gleiche Computer eine Seite mit einem Browser fordert, wird es das Cookie zu senden. Mit PHP können Sie sowohl erstellen und Cookie-Werte abzurufen.

Der Name des Cookies auf eine Variable mit dem gleichen Namen automatisch zugewiesen. Wenn beispielsweise ein Cookie mit dem Namen gesendet wurde "user" wird eine Variable erstellt automatisch $ Benutzer aufgerufen, den Cookie - Wert enthält.

Note: Die setrawcookie() Funktion vor dem erscheinen <html> -Tag.

Note: Um automatisch den Cookie - Wert URL-kodieren beim Senden und automatisch dekodieren beim Empfang, verwenden Sie die setcookie() Funktion statt.

Syntax

setrawcookie( name,value,expire,path,domain,secure );

Parameter Beschreibung
name Erforderlich. Gibt den Namen des Cookies
value Optional. Gibt den Wert des Cookies
expire Optional. Gibt an, wann das Cookie abläuft. Der Wert: time() + 86400 * 30, wird das Cookie gesetzt in 30 Tagen abläuft. Wenn diese Parameter nicht gesetzt, wird das Cookie am Ende der Sitzung abläuft (when the browser closes) wird (when the browser closes)
path Optional. Gibt den Server-Pfad des Cookies. Bei der Einstellung "/" , wird das Cookie innerhalb der gesamten Domain verfügbar. Bei der Einstellung "/php/" , wird das Cookie nur innerhalb des PHP - Verzeichnis und alle Unterverzeichnisse von PHP zur Verfügung. Der Standardwert ist das aktuelle Verzeichnis, das das Cookie gesetzt wird in
domain Optional. Gibt die Domänennamen des Cookies. Um das Cookie auf allen Unterdomänen von example.com zu machen, setzt Domäne ".example.com" . Setzen auf www.example.com wird das Cookie macht nur im www Sub-Domain verfügbar
secure Optional. Gibt an, ob oder nicht sollte das Cookie nur über eine sichere HTTPS-Verbindung übertragen werden. TRUE gibt an, dass das Cookie nur dann, wenn eine sichere Verbindung besteht eingestellt werden. Der Standardwert ist FALSE.

Technische Details

Rückgabewert: TRUE auf Erfolg. FALSE bei einem Fehler
PHP Version: 5+

Mehr Beispiele

Beispiel

Rufen Sie den Wert des Cookie mit dem Namen "user" (den globalen Variable $ _COOKIE verwenden). Verwenden Sie auch die isset() Funktion , um herauszufinden , ob das Cookie vorhanden ist :

<html>
<body>

<?php
$cookie_name = "user";
if(!isset($_COOKIE[$cookie_name])) {
    echo "Cookie named '" . $cookie_name . "' does not exist!";
} else {
    echo "Cookie is named: " . $cookie_name . "<br>Value is: " . $_COOKIE[$cookie_name];
}
?>

</body>
</html>
Führen Sie zB »

Beispiel

So ändern Sie einen Cookie, gerade gesetzt (again) das Cookie mit der setrawcookie() Funktion:

<?php
$cookie_name = "user";
$cookie_value = "Alex";
setrawcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>

<?php
$cookie_name = "user";
if(!isset($_COOKIE[$cookie_name])) {
    echo "Cookie named '" . $cookie_name . "' does not exist!";
} else {
    echo "Cookie is named: " . $cookie_name . "<br>Value is: " . $_COOKIE[$cookie_name];
}
?>

</body>
</html>
Führen Sie zB »

Beispiel

Ein Cookie, verwenden Sie die zu lösch setrawcookie() Funktion mit einem Ablaufdatum in der Vergangenheit:

<?php
$cookie_name = "user";
unset($_COOKIE[$cookie_name]);
// empty value and expiration one hour before
$res = setrawcookie($cookie_name, '', time() - 3600);
?>
<html>
<body>

<?php
echo "Cookie 'user' is deleted.";
?>

</body>
</html>
Führen Sie zB »

Beispiel

Erstellen Sie ein kleines Skript , das prüft , ob cookies aktiviert sind. Versuchen Sie zunächst, einen Test Cookie mit dem erstellen setrawcookie() Funktion, dann die Variable $ _COOKIE Array zählen:

<?php
setrawcookie("test_cookie", "test" , time() + 3600, '/');
?>
<html>
<body>

<?php
if(count($_COOKIE) > 0) {
    echo "Cookies are enabled";
} else {
    echo "Cookies are disabled";
}
?>

</body>
</html>
Führen Sie zB »

<PHP HTTP Referenz