【问题标题】:Laravel, Guzzle - Check if Cookie is setLaravel,Guzzle - 检查是否设置了 Cookie
【发布时间】:2017-05-24 16:30:35
【问题描述】:

我想在底部getUsername()时检查cookie是否设置。谁能帮我快速解决这个问题?我已经尝试了几个小时没有运气。

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\Cookie;

class CookieController extends Controller 
{
    public function setCookie(\stdClass $request)
    {
        $minutes = 60;
        $response = new Response(view('panel.panel'));
        $response->withCookie(cookie('userInfo', $request, $minutes));
        return $response;
    }
    public function getCookie(){
        $val = cookie::get('userInfo');
        return $val;
    }

    public function getUsername(){
        $cookie = cookie::get('userInfo');
        return $cookie->message->username;
    }

    public function getShopID(){
        $cookie = cookie::get('ShopID');
        return $cookie->message->shopID;
    }
}
?>

【问题讨论】:

    标签: php laravel cookies


    【解决方案1】:

    您可以使用isset 或与null 比较

    public function getUsername(){
        $cookie = cookie::get('userInfo');
        if ($cookie !== null) {
            // do something like set cookie
            // return username
        }
    
    }
    

    【讨论】:

      【解决方案2】:

      尝试使用hasCookie()的方法:

      public function getUsername(Request $request)
      {
          if ($request->hasCookie('userInfo')) {
              $cookie = $request->cookie('userInfo');
              return $cookie->message->username;
          }
      }
      

      【讨论】:

        猜你喜欢
        • 2012-03-10
        • 2015-07-23
        • 2021-05-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-25
        • 1970-01-01
        相关资源
        最近更新 更多