cookies
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
<?php
|
||||
|
||||
/***** Explicación *****/
|
||||
// array_diff: Compara $claves_a_comprobar con $___SESSION y devuelve los valores de $claves_a_comprobar que no estén presentes en $___SESSION (si están todas, devuelve un array vacío)
|
||||
// array_keys: Devuelve un array con todas las claves de array
|
||||
|
||||
// Comprobación básica => array_diff($claves_a_comprobar, array_keys($___SESSION)
|
||||
// Forma 1 => array_diff($claves_a_comprobar, array_keys($___SESSION)) === []
|
||||
// Forma 2 => empty(array_diff($claves_a_comprobar, array_keys($___SESSION)))
|
||||
// Forma 3 => count(array_diff($claves_a_comprobar, array_keys($___SESSION))) === 0
|
||||
|
||||
/***** Ejemplo *****/
|
||||
$___SESSION = [
|
||||
'cero' => 0,
|
||||
'uno' => '1',
|
||||
'dos' => 'dos',
|
||||
'tres' => 3,
|
||||
'cuatro' => '4',
|
||||
];
|
||||
|
||||
/*----- Caso 1: Todas las claves existen -----*/
|
||||
$claves_a_comprobar = ['uno', 'dos', 'tres'];
|
||||
|
||||
// Forma 1
|
||||
if(array_diff($claves_a_comprobar, array_keys($___SESSION)) === []) {
|
||||
echo 'OK-[]' . PHP_EOL;
|
||||
}
|
||||
else {
|
||||
echo 'NOOOO-[]' . PHP_EOL;
|
||||
}
|
||||
|
||||
// Forma 2
|
||||
if(empty(array_diff($claves_a_comprobar, array_keys($___SESSION)))) {
|
||||
echo 'OK-EMPTY' . PHP_EOL;
|
||||
}
|
||||
else {
|
||||
echo 'NOOOO-EMPTY' . PHP_EOL;
|
||||
}
|
||||
|
||||
// Forma 3
|
||||
if(count(array_diff($claves_a_comprobar, array_keys($___SESSION))) === 0) {
|
||||
echo 'OK-COUNT' . PHP_EOL;
|
||||
}
|
||||
else {
|
||||
echo 'NOOOO-COUNT' . PHP_EOL;
|
||||
}
|
||||
|
||||
/*----- Caso 2: No existen todas las claves -----*/
|
||||
$claves_a_comprobar = ['uno', 'two', 'tres'];
|
||||
|
||||
// Forma 1
|
||||
if(array_diff($claves_a_comprobar, array_keys($___SESSION)) === []) {
|
||||
echo 'OK-[]' . PHP_EOL;
|
||||
}
|
||||
else {
|
||||
echo 'NOOOO-[]' . PHP_EOL;
|
||||
}
|
||||
|
||||
// Forma 2
|
||||
if(empty(array_diff($claves_a_comprobar, array_keys($___SESSION)))) {
|
||||
echo 'OK-EMPTY' . PHP_EOL;
|
||||
}
|
||||
else {
|
||||
echo 'NOOOO-EMPTY' . PHP_EOL;
|
||||
}
|
||||
|
||||
// Forma 3
|
||||
if(count(array_diff($claves_a_comprobar, array_keys($___SESSION))) === 0) {
|
||||
echo 'OK-COUNT' . PHP_EOL;
|
||||
}
|
||||
else {
|
||||
echo 'NOOOO-COUNT' . PHP_EOL;
|
||||
}
|
||||
21
Practicas/Practicas_PHP/codigo/cookies/INTRO_COOKIES_PHP.php
Normal file
21
Practicas/Practicas_PHP/codigo/cookies/INTRO_COOKIES_PHP.php
Normal file
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
// Mecanismo cookies
|
||||
//1.Creación en el servidor
|
||||
//2.Almacenamiento en el cliente
|
||||
//3.Envío al servidor con cada solicitud Http
|
||||
//4.Procesamiento en el servidor
|
||||
//5.Actualización o eliminación
|
||||
|
||||
|
||||
// Establecer cookies -- No estrán disponibles hasta la siguiente petición HTTP.
|
||||
//setcookie($nombre, $valor = "", $vencimiento = 0, $ruta = "", $dominio = "", $seguro = false, $httponly = false)
|
||||
//$vencimiento en tiempo UNIX si se establece en 0 se convierte en cookie de sesión.
|
||||
//$ruta en la que estará disponible, por defecto directorio actual, si se establece '/' será valida para todo el dominio.
|
||||
//$dominio en el que estará disponible, por defecto para el dominio actual.
|
||||
//$seguro si se envía solo por https(true)
|
||||
//$httponly si es accesible desde javascript (false)
|
||||
setrawcookie("nombre", "Juan", time() + 3600, "/"); // Cookie con nombre "nombre" y valor "Juan", válida por una hora
|
||||
setcookie("idioma", "es", time() + (86400 * 30), "/"); // Cookie con nombre "idioma" y valor "es", válida por 30 días
|
||||
setcookie("ultima_visita", date("Y-m-d H:i:s"), time() + 3600, "/"); // Cookie con nombre "ultima_visita" y valor de la fecha y hora actual, válida por una hora
|
||||
?>
|
||||
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
// Acceder a las cookies desde otra página
|
||||
|
||||
|
||||
// Leer cookies
|
||||
$nombre = $_COOKIE['nombre'];
|
||||
$idioma = $_COOKIE['idioma'];
|
||||
$ultimaVisita = $_COOKIE['ultima_visita'];
|
||||
|
||||
var_dump($_COOKIE);
|
||||
|
||||
// Mostrar valores de las cookies
|
||||
echo "Hola, $nombre. ";
|
||||
echo "Tu idioma preferido es $idioma. ";
|
||||
echo "Tu última visita fue el $ultimaVisita.";
|
||||
?>
|
||||
Reference in New Issue
Block a user