如何检查 Laravel 中是否设置了 cookie?

laravelphpserver side programming更新于 2025/4/30 1:22:17

当您访问网页时,它通常会生成包含用户名和密码等小块数据的文本文件,并将其存储在用户的浏览器中。这些是已知的 cookie,它们用于识别用户系统,可以由 Web 服务器或客户端计算机(它们存储在其上)访问。

  • 存储在 cookie 中的信息特定于 Web 服务器。

  • 一旦您连接到服务器,就会创建一个带有唯一 ID 标记的 cookie 并存储在您的计算机中。

  • 一旦 cookie 在客户端中交换/存储,如果您再次连接到服务器,它将根据存储的 cookie 识别您的系统。

  • 这有助于服务器向特定用户提供个性化的页面。

示例 1

以下示例创建一个 cookie 并验证它是否已设置。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; use Cookie; class UserController extends Controller { public function index(Request $request) { Cookie::queue('msg', 'cookie testing', 10); echo $value = $request->cookie('msg'); } }

输出

上述代码的输出为 −

示例 2

另一种测试 cookie 是否设置的方法可以在下面的示例中看到 −

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; use Cookie; class UserController extends Controller { public function index(Request $request) { Cookie::queue('msg', 'cookie testing', 10); return view('test'); } }

test.blade.php

<!DOCTYPE html> <html> <head> <style> body { font-family: 'Nunito', sans-serif; } </style> <head> <body class="antialiased"> <div> {{ Cookie::get('msg') }} </div> </body> </html>

输出

上述代码的输出为 −

示例 3

使用 hasCookie() 方法测试给定的 cookie 是否已设置。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; use Cookie; class UserController extends Controller{ public function index(Request $request) { if($request->hasCookie('msg')) { echo "Cookie present"; } else { echo "Cookie msg is not set"; } } }

输出

Cookie present

示例 4

另一个测试 cookie 设置的示例。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; use Cookie; class UserController extends Controller{ public function index(Request $request) { return view('test'); } }

Test.blade.php

<!DOCTYPE html> <html> <head> <style> body { font-family: 'Nunito', sans-serif; } </style> </head> <body class="antialiased"> <div> @if (Cookie::get('msg') !== false) <p>cookie is present.</p> @else <p>cookie is not set.</p> @endif </div> </body> </html>

输出

上述代码的输出是 −

cookie is present.

相关文章