【问题标题】:Laravel session - put() return nullLaravel 会话 - put() 返回 null
【发布时间】:2017-01-12 00:42:05
【问题描述】:

一开始。

我看到了这个问题: Laravel 5 - session put not working Laravel session key is null after put in session laravel session returning null inspite of setting it Laravel 5 - session doesn't work

试图修改我的代码但没有任何改变。

问题:

http://localhost:8000/session/set - 尝试保存会话(var_dump 返回 NULL) 在http://localhost:8000/session/get - 试图获取我保存的这个会话,但它没有。

我的代码在SessionController.php:

    class SessionController extends Controller{
        public function accessSessionData(Request $request){
            if($request->session()->has('name')){
                    var_dump($request->session()->get('name'));
            }
            else{
                    echo 'No data in the session.';
            }
            }

            public function storeSessionData(Request $request){
                    var_dump($Crequest->session()->put('name','Filip'));
                    echo "Data has been set.";
            }
}

我的代码在route.php:

Route::get('session/get', 'SessionController@accessSessionData');

Route::get('session/set', 'SessionController@storeSessionData');

Route::get('session/delete', 'SessionController@deleteSessionData');

session.php 驱动程序中设置为file 和标准storage_path

存储会话的文件夹 - chmod 755

有什么想法吗?

【问题讨论】:

  • 好吧,没关系。我只是按照这种方式: 1. 在终端中:composer require illuminate/html 2. 在提供者Illuminate\Html\HtmlServiceProvider::class, 中添加 config/app.php 3. 在同一个文件中:'Form' => Illuminate\Html\FormFacade::class, 'Html' => Illuminate\Html\HtmlFacade::class, 4. 保存文件 5. 重新启动 serv 和一切(重新启动计算机)并且 pull() 在 var_dump() 中返回 null,即使它有效

标签: php laravel session laravel-5.2


【解决方案1】:

您可以使用函数session() 使用另一种方法从会话中存储/获取数据;

获取会话对象:$session = session();

为会话添加一个新值:$session = session(['key' => 'value']);

从会话中获取一个值:$value = session('key');

【讨论】:

    猜你喜欢
    • 2019-06-08
    • 2017-07-03
    • 1970-01-01
    • 2012-11-25
    • 2016-09-23
    • 2015-10-11
    • 2013-05-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多