Gli ultimi tutorial di sviluppo web
 

PHP setrawcookie() Function

<PHP HTTP di riferimento

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