如何在Laravel 5.2中使用cookie

Aks*_*iya 8 php laravel laravel-5.2

我正在为某些点击事件设置cookie.然后在cookie中存储值后,我想

  1. 检查cookie是否存在
  2. 获取cookie值

我通过参考Laravel官方文档开发了一个函数.控制台显示已设置cookie.但在那之后,我无法解决视图(Blade Template)中的两点(在上面的列表中提到).它总是显示(Cookie::get('cookie.clients'))'null'.但浏览器控制台显示该cookie.如果有人知道答案,我们将不胜感激.

这是我的代码.

调节器

use App\Client;
use App\Http\Requests;
use Illuminate\Http\Request;
use Validator;
use App\Http\Controllers\Controller;
use App\Repositories\ClientRepository;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Cookie;

class ClientController extends Controller
{
    public function cookieadd(Request $request, Client $client)
    {
        $clients = [];
        if (Cookie::get('cookie.clients') != null)
        {
            $clients = Cookie::get('cookie.clients');
        }
        array_push($clients, $client);

        Cookie::forever('cookie.clients', $clients);

        return redirect('/client');
    }
}
Run Code Online (Sandbox Code Playgroud)

视图

@if (Cookie::get('cookie.clients') != null)
<p>cookie is set</p>
@else
<p>cookie isn't set</p>
@endif
Run Code Online (Sandbox Code Playgroud)

小智 1

您是否尝试通过 Request 对象显示 cookie?

$value = $request->cookie('name');
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息,请参阅 laravel 文档:https://laravel.com/docs/5.2/requests#cookies