Laravel - 控制器中的会话获取设置的最后一个值

时间:2018-06-11 17:06:21

标签: php laravel

您好我正试图在laravel中的会话中存储值。 我想存储一个值来获取最后设置的值。

我有这条路线

web.php

Route::prefix('v1')->group(function () {
    Route::get('/{lol}', 'MyController@test');
});

myController的

public function test($lol){

    if($lol == "lol" ){
        session(['lol' => $lol]);
    }

    dd(session()->get('lol'));

}

http://localhost/laravel/v1/lol =>回报价值! OK!

http://localhost/laravel/v1/123 =>返回null!,为什么???

我想返回lol,因为我需要存储在会话中的最后一个值。

我认为PHP中的$ _SESSION可以很好地用于此目的。

但是在Laravel中我无法使用它。

2 个答案:

答案 0 :(得分:1)

会话数据以terminable middleware编写,仅应用after the request has been sent。因此,如果您尝试在代码before中使用会话变量,则表示您已返回请求,这将无效。

您在此处使用会话的方式无效。

答案 1 :(得分:1)

我使用了这段代码: enter image description here

基本上与您所做的代码相同,我注意到您可以在应用程序中登录之后在laravel 会话中设置值,必须经过身份验证。 当我提到这段代码时,我得到了同样的错误,第二个请求中的会话为空