Ejemplo
En el siguiente ejemplo se crea una cookie con PHP. La cookie se denomina "user" y el valor será "John Doe" . El valor de la cookie no será URL codificada. La cookie caducará después de 30 días (86400 * 30) . El uso de "/" , significa que la cookie está disponible en todo el sitio 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>
?>
Ejecutar ejemplo » Definición y Uso
El setrawcookie() función define una cookie (without URL encoding) que se enviará junto con el resto de las cabeceras HTTP.
Una cookie se utiliza a menudo para identificar a un usuario. Una cookie es un pequeño archivo que el servidor se incrusta en el ordenador del usuario. Cada vez que el mismo equipo solicita una página con un navegador, se enviará la cookie también. Con PHP, puede tanto crear y recuperar los valores de cookie.
El nombre de la cookie se asigna automáticamente a una variable del mismo nombre. Por ejemplo, si una cookie se envía con el nombre de "user" , una variable es automáticamente creó llamado $ usuario, que contiene el valor de la cookie.
Note: El setrawcookie() la función debe aparecer antes de la <html> etiqueta.
Note: Para cifrar la URL de forma automática el valor de la cookie al enviar, y automáticamente decodificar cuando se recibe, utilice el setcookie() función en lugar.
Sintaxis
setrawcookie( name,value,expire,path,domain,secure );
Parámetro | Descripción |
---|---|
name | Necesario. Especifica el nombre de la cookie |
value | Opcional. Especifica el valor de la cookie |
expire | Opcional. Especifica cuando la cookie caduca. El valor: time() + 86400 * 30, establecerá la cookie expira en 30 días. Si este parámetro no está establecido, la cookie expirará al final de la sesión (when the browser closes) |
path | Opcional. Especifica la ruta del servidor de la cookie. Si se establece en "/" , la cookie estará disponible dentro de todo el dominio. Si se establece en "/php/" , la cookie sólo estará disponible dentro del directorio php y todos los subdirectorios de php. El valor predeterminado es el directorio actual que la cookie se establece en |
domain | Opcional. Especifica el nombre de dominio de la cookie. Para hacer la cookie disponibles en todos los subdominios de example.com, dominio establecido a ".example.com" . Si se establece en www.example.com hará que la cookie sólo está disponible en el subdominio www |
secure | Opcional. Especifica si la cookie sólo debe ser transmitida a través de una conexión segura HTTPS. TRUE indica que la cookie sólo se establece si existe una conexión segura. Por defecto es FALSO. |
Detalles técnicos
Valor de retorno: | TRUE en caso de éxito. En caso de fallo |
---|---|
Versión de PHP: | 5+ |
Más ejemplos
Ejemplo
Recuperar el valor de la cookie llamada "user" (utilizando la variable global $ _COOKIE). También utilizar el isset() función para averiguar si existe la 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>
Ejecutar ejemplo » Ejemplo
Para modificar una cookie, acaba de establecer (again) la cookie utilizando el setrawcookie() función:
<?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>
Ejecutar ejemplo » Ejemplo
Para eliminar una cookie, utilice el setrawcookie() función con una fecha de caducidad en el pasado:
<?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>
Ejecutar ejemplo » Ejemplo
Crear un pequeño script que comprueba si cookies están habilitadas. En primer lugar, tratar de crear una cookie de prueba con el setrawcookie() función, y luego contar la variable de matriz $ _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>
Ejecutar ejemplo » <PHP HTTP Referencia