如何在自定义类laravel 5中使用会话?

时间:2017-03-27 14:19:28

标签: php laravel laravel-5

这是我的代码:

<?php 
use Illuminate\Support\Facades\Session;
namespace App\CustomLibrary

{
    class myFunctions {
        public function is_login() {
            if(Session::get('id') != null){

                return TRUE;
            }
        }
    }
}
?>

我是laravel 5中的新手,我刚添加了一个新的自定义功能。在这个功能里面我想检查一个会话(&#39; id)?但我有这样的错误

  

myFunctions.php第8行中的FatalErrorException:   Class&#39; App \ CustomLibrary \ Session&#39;找不到

我需要知道如何正确使用会话。

3 个答案:

答案 0 :(得分:4)

namespace part:

之后立即将此子句添加到类的顶部
use Session;

或使用完整命名空间:

if (\Session::get('id') != null)

或使用session()助手:

if (session('id') != null)

答案 1 :(得分:1)

您的//use Illuminate\Support\Facades\Session; //Not here namespace App\CustomLibrary use Illuminate\Support\Facades\Session; //Here 必须在命名空间声明后

use

在命名空间之前$array['title'] = array(0 => 'John', 1 => 'Wick'); $array['price'] = array(0 => '100$', 1 => '200$'); $array['count'] = array(0 => 88900, 1 => 92000); foreach($array['title'] as $k=>$v){ $result[$k]['title']=$v; $result[$k]['price']=$array['price'][$k]; $result[$k]['count']=$array['count'][$k]; } print_r($result); d之前的任何内容都在全局命名空间中使用,一旦声明了命名空间,它就会发生变化。

答案 2 :(得分:1)

在模型和控制器中使用Session;

//通过请求实例...

$ request-&gt; session() - &gt; put('key','value');

//通过全球帮助者......

会话(['key'=&gt;'value']);

了解更多详情https://laravel.com/docs/5.1/session