Esempio
L'esempio seguente crea un cookie con PHP. Il cookie è denominato "user" e il valore sarà "John Doe" . Il valore del cookie non sarà URL codificato. Il cookie scadrà dopo 30 giorni (86400 * 30) . Utilizzando "/" , significa che il cookie è disponibile in tutto il sito web (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>
?>
Esempio Run » Definizione e l'utilizzo
Il setrawcookie() funzione definisce un cookie (without URL encoding) da inviare insieme al resto delle intestazioni HTTP.
Un cookie è spesso usato per identificare un utente. Un cookie è un piccolo file che il server incorpora sul computer dell'utente. Ogni volta che lo stesso computer richiede una pagina con un browser, invierà il cookie troppo. Con PHP, è possibile sia creare e recuperare i valori dei cookie.
Il nome del cookie viene automaticamente assegnato a una variabile con lo stesso nome. Ad esempio, se un cookie è stato inviato con il nome di "user" , una variabile viene creata automaticamente chiamato $ utente, che contiene il valore del cookie.
Note: Il setrawcookie() funzione deve apparire prima del <html> tag.
Note: Per automaticamente la codifica URL il valore del cookie per l'invio, e decodificare quando si riceve, utilizzare l'automaticamente setcookie() funzione invece.
Sintassi
setrawcookie( name,value,expire,path,domain,secure );
Parametro | Descrizione |
---|---|
name | Necessario. Specifica il nome del cookie |
value | Opzionale. Specifica il valore del cookie |
expire | Opzionale. Specifica quando il cookie scade. Il valore: time() + 86400 * 30, imposterà il cookie scade in 30 giorni. Se questo parametro non è impostato, il cookie scadrà alla fine della sessione (when the browser closes) |
path | Opzionale. Specifica il percorso del server del cookie. Se è impostato su "/" , il cookie sarà disponibile entro l'intero dominio. Se è impostato su "/php/" , il cookie sarà disponibile all'interno della directory php e tutte le sottodirectory di php solo. Il valore predefinito è la directory corrente che il cookie viene impostato in |
domain | Opzionale. Specifica il nome di dominio del cookie. Per rendere il cookie disponibile su tutti i sottodomini di example.com, dominio impostato a ".example.com" . L'impostazione per www.example.com renderà il cookie disponibile solo nel sottodominio www |
secure | Opzionale. Specifica se il cookie deve essere trasmesso solo tramite una connessione sicura HTTPS. True indica che il cookie viene impostato solo se esiste una connessione sicura. Il valore predefinito è FALSE. |
Dettagli tecnici
Valore di ritorno: | TRUE in caso di successo. FALSE in caso di fallimento |
---|---|
Versione PHP: | 5+ |
Altri esempi
Esempio
Recuperare il valore del cookie denominato "user" (usando il $ _COOKIE variabile globale). Anche utilizzare isset() funzione per scoprire se esiste il 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>
Esempio Run » Esempio
Per modificare un cookie, è sufficiente impostare (again) il cookie utilizzando il setrawcookie() la funzione:
<?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>
Esempio Run » Esempio
Per eliminare un cookie, utilizzare il setrawcookie() funzione con una data di scadenza nel passato:
<?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>
Esempio Run » Esempio
Creare un piccolo script che controlla se cookies sono abilitati. In primo luogo, cercare di creare un cookie test con la setrawcookie() la funzione, poi contare la variabile di matrice $ _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>
Esempio Run » <PHP HTTP di riferimento