Как добавить cookie с помощью Zend Framework 3?
Мне нужно отправить куки в браузер, используя Zend Framework 3.
Мой код следует ниже, но он не работает:
$cookie = new Zend\Http\Header\SetCookie('CookieKey', $val, $time, '/', '');
$response->getHeaders()->addHeader($cookie);
Как правильно использовать cookie-файлы?
1 ответ
Решение
Вы устанавливаете путь к '/'
и используя пустой домен ''
при создании нового SetCookie
пример. Передача пустой строки в качестве домена может привести к проблемам.
Вторая деталь - вам нужно провести время в будущем как третье (expires
) аргумент. Вы уверены, что дали время в будущем?
Посмотрите на следующий пример, он без проблем устанавливает cookie в моём приложении ZF3:
namespace MyApp\Action;
use Zend\Http\Header\SetCookie;
public function indexAction()
{
$cookie = new SetCookie('bar', 'baz', time()+7200);
$this->getResponse()->getHeaders()->addHeader($cookie);
return new ViewModel();
}