Funkcja PHP setcookie()
Definicja i użycie
Funkcja setcookie() wysyła HTTP cookie do klienta.
Cookie to zmienne wysyłane przez serwer do przeglądarki. Cookie to zazwyczaj małe pliki tekstowe wstawiane przez serwer do komputera użytkownika. Każdy raz, gdy komputer żąda strony za pomocą przeglądarki, wysyłany jest ten cookie.
Nazwa cookie jest określona jako zmienna o tej samej nazwie. Na przykład, jeśli wysyłane cookie ma nazwę "name", automatycznie tworzy się zmienna $user, która zawiera wartość cookie.
Musisz przypisać cookie przed wysłaniem jakiegokolwiek innego wyjścia.
Jeśli funkcja zwróci true, to oznacza sukces, w przeciwnym razie zwróci false.
Gramatyka
setcookie(name,value,expire,path,domain,secure)
Parametry | Opis |
---|---|
name | Wymagane. Określa nazwę cookie. |
value | Wymagane. Określa wartość cookie. |
expire | Opcjonalnie. Określa okres ważności cookie. |
path | Opcjonalnie. Określa ścieżkę serwera cookie. |
domain | Opcjonalnie. Określa domenę cookie. |
secure | Opcjonalnie. Określa, czy cookie mają być przesyłane przez bezpieczne połączenie HTTPS. |
Wskazówki i komentarze
Komentarz:Możesz uzyskać wartość cookie o nazwie "user" za pomocą $HTTP_COOKIE_VARS["user"] lub $_COOKIE["user"]
Komentarz:Podczas wysyłania cookie, wartość cookie jest automatycznie kodowana URL. Podczas odbierania jest dekodowana. Jeśli nie potrzebujesz tego, możesz użyć setrawcookie() zamiast tego.
Przykład
Przykład 1
Ustawienie i wysłanie cookie:
<?php $value = "my cookie value"; // Wyślij prosty cookie setcookie("TestCookie",$value); ?> <html> <body> ... ...
<?php $value = "my cookie value"; // Wyślij cookie, które wygaśnie po 24 godzinach setcookie("TestCookie",$value, time()+3600*24); ?> <html> <body> ... ...
Przykład 2
Wyszukiwanie różnych metod wartości cookie:
<html> <body> <?php // Wydrukuj pojedynczy cookie echo $_COOKIE["TestCookie"]; echo "<br />"; echo $HTTP_COOKIE_VARS["TestCookie"]; echo "<br />"; // Wyjście wszystkich cookie print_r($_COOKIE); ?> </body> </html>
Wyjście:
moja wartość ciasteczka moja wartość ciasteczka Array ([TestCookie] => moja wartość ciasteczka)
Przykład 3
// Usuń cookie, ustawiając datę wygaśnięcia na datę/minutę w przeszłości
<?php // Ustaw datę wygaśnięcia na godzinę temu setcookie ("TestCookie", "", time() - 3600); ?> <html> <body> ... ...
Przykład 4
Utwórz tablicę cookie:
<?php setcookie("cookie[three]","cookiethree"); setcookie("cookie[two]","cookietwo"); setcookie("cookie[one]","cookieone"); // Wyjście cookie (po przeładowaniu strony) if (isset($_COOKIE["cookie"])) { foreach ($_COOKIE["cookie"] as $name => $value) { echo "$name : $value <br />"; } } ?> <html> <body> ... ...
Wyjście:
three : cookiethree two : cookietwo one : cookieone