【问题标题】:Check if session key exists in Laravel 5.1?检查 Laravel 5.1 中是否存在会话密钥?
【发布时间】:2015-09-15 15:55:07
【问题描述】:

我正在尝试检查是否已在控制器中设置会话密钥。文档指出,可以检查一个项目是否存在于数组中,仅此而已。

http://laravel.com/docs/5.1/session

【问题讨论】:

  • 你不能只做if (Session::has('your_key')) 吗?

标签: session laravel laravel-5


【解决方案1】:

你可以使用

if($request->session()->has('key'))
{
}

【讨论】:

  • 代码不够用。请解释一下。
  • 在 laravel 5 中或其上层语法已更改,这就是为什么您将编写这样的代码来检查会话是否存在。阅读 laravel 5.2 的会话文档。它使您的概念清晰。
【解决方案2】:

@DavidDomain 指出可能最好的方法是使用

if(Session::has('...'))

对我来说就像一个魅力。

【讨论】:

    【解决方案3】:

    你可以在刀片和控制器中使用Session::has('YOUR_SESSION_KEY')

    控制器前:

    <?php
    
    namespace App\Http\Controllers;
    
    use Illuminate\Http\Request;
    use Session;
    
    class add_classController extends Controller
    {
      public function index(){
        if (Session::has('YOUR_SESSION_KEY')){
          // do some thing if the key is exist
        }else{
          //the key does not exist in the session
        }
    
      }
    }
    

    刀片前:

    @if (Session::has('YOUR_SESSION_KEY'))
    {{-- do something with session key --}}
    @else
    {{-- session key dosen't exist  --}}
    @endif
    

    【讨论】:

      【解决方案4】:

      你可以这样做

      if(Session::has('your_key')){
              return $next($request);
          }
      

      【讨论】:

        【解决方案5】:
        if($request->session()->exists('your_key'){
        // 
        }
        

        【讨论】:

        • 虽然这段代码 sn-p 可以回答这个问题,包括解释它为什么以及如何帮助解决问题,但可以提高您的答案的质量和寿命。见How do I write a good answer?
        【解决方案6】:

        或者更短,不使用会话外观:if(session()-&gt;exists('key_here'))

        【讨论】:

          【解决方案7】:
          @if ( session::has('message') 
          
          {{ session::get('message') }}
          @endif
          

          @if (session->has->('message'))
          
          {{session->
          
          @endif
          

          【讨论】:

          • 欢迎来到 SO!由于已经给出了这个确切的答案并且问题已有 6 年历史,因此重复的答案并没有多大贡献。也许您可以看看没有答案的新问题来提供帮助?
          【解决方案8】:

          这对我有用

          @if (session()->has('hasCoupon'))
              [{{ Session::get('hasCoupon')['name'] }}]</span>
          @endif
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-04-10
            • 2018-04-04
            • 2011-04-23
            • 2019-12-09
            • 2014-09-14
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多