【发布时间】:2014-10-06 16:52:20
【问题描述】:
我想像使用普通 cookie 一样使用 Laravel 4 cookie,在用户 PC 上存储信息。
所以基本上我想让 Laravel 等同于:
setcookie("TestCookie", $value, time() + 3600 * 24 * 365);
echo $_COOKIE["TestCookie"];
我用了这个,没有成功,它没有打印任何东西:
Cookie::make('TestCookie', $value, 60 * 24 * 365);
echo Cookie::get('TestCookie');
同样适用
Cookie::queue('TestCookie', $value, 60 * 24 * 365);
echo Cookie::get('TestCookie');
或者
Cookie::forever('TestCookie', $value);
echo Cookie::get('TestCookie');
我想在我的 BaseController __construct 方法中执行此操作:
if (Session::has('hash') && !Cookie::has('hash'))
{
Cookie::queue('hash', Session::get('hash'), $this->cookieLifeTime);
}
else if (Cookie::has('hash') && !Session::has('hash'))
Session::put('hash', Cookie::get('hash'));
else if (!Session::has('hash') && !Cookie::has('hash'))
{
$hash = str_shuffle(sha1(uniqid()));
Session::put('hash', $hash);
Cookie::queue('hash', Session::get('hash'), $this->cookieLifeTime);
}
谢谢:)
【问题讨论】: