PHP setcookie() funktion

Definition og brug

setcookie() funktionen sender en HTTP cookie til klienten.

Cookies er variabler, der sendes fra serveren til browseren. Cookies er typisk små tekstfiler, der serveren embedder i brugerens computer. Hver gang computeren gennem browseren anmoder om en side, sendes denne cookie.

Cookienavnet specificeres som en variabel med samme navn. For eksempel vil hvis den sendte cookie hedder "name", vil der automatisk blive oprettet en variabel $user, der indeholder cookiens værdi.

Cookieværdien skal sættes, før alle andre output sendes.

Returnerer true, hvis funktionen lykkes, ellers returnerer den false.

Syntaks

setcookie(name,value,expire,path,domain,secure)
Parametre Beskrivelse
name Obligatorisk. Angiv cookiens navn.
value Obligatorisk. Angiv cookiens værdi.
expire Valgfri. Angiv cookiens udløbsdato.
path Valgfri. Angiv serverens sti for cookien.
domain Valgfri. Angiv domænet for cookien.
secure Valgfri. Angiv om cookies skal overføres gennem en sikker HTTPS-forbindelse.

Påmindelser og bemærkninger

Bemærkninger:Du kan få adgang til værdien af en cookie med navn "user" ved hjælp af $HTTP_COOKIE_VARS["user"] eller $_COOKIE["user"].

Bemærkninger:Når cookies sendes, vil værdien automatisk blive URL-kodet. Modtagelsen vil udføre URL-dekoding. Hvis du ikke har brug for dette, kan du bruge setrawcookie() Erstat.

Eksempel

Eksempel 1

Sæt og send cookie:

<?php
$value = "my cookie value";
// Send en simpel cookie
setcookie("TestCookie",$value);
?>
<html>
<body>
...
...
<?php
$value = "my cookie value";
// Send en cookie, der udløber om 24 timer
setcookie("TestCookie",$value, time()+3600*24);
?>
<html>
<body>
...
...

Eksempel 2

Søg efter forskellige metoder til at finde cookie-værdier:

<html>
<body>
<?php
// Udlæs en enkelt cookie
echo $_COOKIE["TestCookie"];
echo "<br />";
echo $HTTP_COOKIE_VARS["TestCookie"];
echo "<br />";
// Output alle cookies
print_r($_COOKIE);
?>
</body>
</html>

Output:

min cookie værdi
min cookie værdi
Array ([TestCookie] => min cookie værdi)

Eksempel 3

// Slet en cookie ved at sætte udløbsdato til en tidligere dato/tid

<?php
// Sæt udløbsdato til en time tidligere
setcookie ("TestCookie", "", time() - 3600);
?>
<html>
<body>
...
...

Eksempel 4

Opret en array cookie:

<?php
setcookie("cookie[three]","cookiethree");
setcookie("cookie[two]","cookietwo");
setcookie("cookie[one]","cookieone");
// Output cookie (efter sidegenindlæsning)
if (isset($_COOKIE["cookie"]))
  {
  foreach ($_COOKIE["cookie"] as $name => $value)
    {
    echo "$name : $value <br />";
    }
  }
?>
<html>
<body>
...
...

Output:

three : cookiethree
two : cookietwo
one : cookieone