Cookies en Symfony
En esta sección nos centraremos en el uso de cookies en Symfony. Cualquier página hoy en día usa cookies para almacenar datos, como por ejemplo carritos o datos de sesión, cliente, etc.
Para implementar una cookie en Symfony tenemos que incluir sus funciones en nuestro controlador, así como las de REQUEST y RESPONSE:
use Symfony\Component\HttpFoundation\Cookie; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response;
Una vez hecho solo tenemos que declarar nuestra cookie en nuestra función:
$response = new Response(); $time = time() + (3600 * 24 * 7); $response->headers->setCookie(new Cookie($nombre, $arrayDatos, $time)); $response->sendHeaders();
Una vez declarada tenemos dos formas de acceder a la misma:
$cookie = $request->cookies->all(); $cookie = $response->headers->getCookies(); //En ambos casos nos devuelven un array con las cookies, por lo que tenemos que recorrerlo con un bucle y seleccionar las que deseemos con un filtro //Por lo general se usa la segunda, pero hay casos en los que al salir de página //esta clase de lectura falla y para ello esta la primera.
Para editar una cookie simplemente tienes que volver a declararla con el mismo nombre
Aquí puedes ver otras entradas del blog de Symfony que te pueden interesar:
Una respuesta