Najnowsze tutoriale tworzenie stron internetowych
 

PHP setrawcookie() Function

<PHP HTTP referencyjny

Przykład

Poniższy przykład tworzy plik cookie z PHP. Plik cookie o nazwie "user" , a wartość będzie "John Doe" . Wartość ciasteczko nie zostanie zakodowany w adresie URL. Plik cookie wygasa po 30 dniach (86400 * 30) . Korzystanie z "/" , oznacza, że cookies są dostępne w całej stronie (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>
?>
Uruchomić przykład »

Definicja i Wykorzystanie

setrawcookie() funkcja definiuje cookie (without URL encoding) być wysyłane razem z resztą nagłówki HTTP.

Cookie jest często używany do identyfikacji użytkownika. Cookie to mały plik, który serwer osadza na komputerze użytkownika. Za każdym razem ten sam komputer żąda strony w przeglądarce, to wyśle ​​cookie zbyt. W PHP można zarówno tworzyć i pobierać wartości cookie.

Nazwa pliku cookie jest automatycznie przypisywana do zmiennej o tej samej nazwie. Na przykład, jeśli plik cookie został wysłany z nazwą "user" , zmienna jest tworzona automatycznie nazywane $ użytkownika, zawierający wartość cookie.

Note: setrawcookie() funkcja musi stanąć przed <html> tag.

Note: Aby automatycznie URL zakodować wartość cookie, podczas wysyłania i automatycznie dekodować podczas odbierania, użyj setcookie() zamiast funkcji.

Składnia

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

Parametr Opis
name Wymagany. Określa nazwę pliku cookie
value Opcjonalny. Określa wartość cookie
expire Opcjonalny. Określa, kiedy wygaśnie cookie. Wartość: time() + 86400 * 30, ustawi plik cookie wygasa po 30 dniach. Jeśli ten parametr nie jest ustawiony plik cookie wygasa po zakończeniu sesji (when the browser closes)
path Opcjonalny. Określa ścieżkę serwera cookie. Jeśli ustawione na "/" , ciasteczko będzie dostępna w całej domenie. Jeśli jest ustawiony na "/php/" , ciasteczko będzie dostępny w katalogu php i wszystkich podkatalogów PHP tylko. Domyślną wartością jest katalog bieżący, że plik cookie jest ustawiony w
domain Opcjonalny. Określa nazwę domeny cookie. Aby cookie dostępna we wszystkich subdomenach example.com ustawić domenę do ".example.com" . Ustawienie na www.example.com uczyni cookie dostępne tylko w subdomeny www
secure Opcjonalny. Określa czy ciasteczko powinno być przekazywane tylko za pośrednictwem bezpiecznego połączenia HTTPS. TRUE wskazuje, że ciasteczko zostanie ustawiony tylko wtedy, gdy istnieje bezpieczne połączenie. Domyślną jest FALSE.

Szczegóły techniczne

Zwracana wartość: TRUE w przypadku sukcesu. FALSE w przypadku porażki
Wersja PHP: 5+

Więcej przykładów

Przykład

Odzyskać wartość cookie o nazwie "user" (za pomocą globalnej zmiennej $ _COOKIE). Również użyć isset() funkcji, aby dowiedzieć się, czy istnieje plik cookie:

<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>
Uruchomić przykład »

Przykład

Aby zmodyfikować plik cookie, po prostu ustaw (again) cookie pomocą setrawcookie() funkcji:

<?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>
Uruchomić przykład »

Przykład

Aby usunąć pliki cookie, użyj setrawcookie() funkcji z datą wygaśnięcia w przeszłości:

<?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>
Uruchomić przykład »

Przykład

Stworzyć mały skrypt, który sprawdza, czy cookies są włączone. Po pierwsze, spróbuj utworzyć plik cookie testową z setrawcookie() funkcji, a następnie policzyć zmienną tablicową $ _COOKIE:

<?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>
Uruchomić przykład »

<PHP HTTP referencyjny