PHP setrawcookie() Funksie
Voorbeeld
Die volgende voorbeeld skep 'n koekie met PHP. Die koekie word "gebruiker" genoem en die waarde sal "John Doe" wees. Die koekiewaarde sal nie URL-gekodeer wees nie. Die koekie sal na 30 dae verval (86400 * 30). Deur "/" te gebruik, beteken dat die koekie op die hele webwerf beskikbaar is (anders kies die gids wat jy verkies):
<?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>
?>
Definisie en gebruik
Die setrawcookie()-funksie definieer 'n koekie (sonder URL-kodering) wat saam met die res van die HTTP-opskrifte gestuur moet word.
'n Koekie word dikwels gebruik om 'n gebruiker te identifiseer. 'n Koekie is 'n klein lêer wat die bediener op die gebruiker se rekenaar insluit. Elke keer as dieselfde rekenaar 'n bladsy met 'n blaaier versoek, sal dit ook die koekie stuur. Met PHP kan jy koekiewaardes skep en herwin.
Die naam van die koekie word outomaties aan 'n veranderlike met dieselfde naam toegeken. Byvoorbeeld, as 'n koekie met die naam "gebruiker" gestuur is, word 'n veranderlike outomaties geskep genaamd $user, wat die koekiewaarde bevat.
Let wel: Die setrawcookie()-funksie moet VOOR die <html>-merker verskyn.
Let wel: Om die koekiewaarde outomaties te URL-enkodeer wanneer dit gestuur word, en outomaties te dekodeer wanneer dit ontvang word, gebruik eerder die setcookie()- funksie.
Sintaksis
setrawcookie(name, value, expire, path, domain, secure);
Parameterwaardes
Parameter | Description |
---|---|
name | Required. Specifies the name of the cookie |
value | Optional. Specifies the value of the cookie |
expire | Optional. Specifies when the cookie expires. The value: time()+86400*30, will set the cookie to expire in 30 days. If this parameter is not set, the cookie will expire at the end of the session (when the browser closes) |
path | Optional. Specifies the server path of the cookie. If set to "/", the cookie will be available within the entire domain. If set to "/php/", the cookie will only be available within the php directory and all sub-directories of php. The default value is the current directory that the cookie is being set in |
domain | Optional. Specifies the domain name of the cookie. To make the cookie available on all subdomains of example.com, set domain to ".example.com". Setting it to www.example.com will make the cookie only available in the www subdomain |
secure | Optional. Specifies whether or not the cookie should only be transmitted over a secure HTTPS connection. TRUE indicates that the cookie will only be set if a secure connection exists. Default is FALSE. |
Tegniese besonderhede
Terugkeerwaarde: | WAAR oor sukses. ONWAAR op mislukking |
---|---|
PHP weergawe: | 5+ |
Meer voorbeelde
Voorbeeld
Haal die waarde van die koekie met die naam "gebruiker" op (met die globale veranderlike $_COOKIE). Gebruik ook die isset()-funksie om uit te vind of die koekie bestaan:
<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>
Voorbeeld
Om 'n koekie te verander, stel net (weer) die koekie met behulp van die setrawcookie()-funksie:
<?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>
Voorbeeld
Om 'n koekie te skrap, gebruik die setrawcookie()-funksie met 'n vervaldatum in die verlede:
<?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>
Voorbeeld
Skep 'n klein skrif wat kyk of webkoekies geaktiveer is. Probeer eers om 'n toetskoekie te skep met die setrawcookie() funksie, tel dan die $_COOKIE skikking veranderlike:
<?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>
❮ PHP-netwerkverwysing