它是一个 laravel 5.2 应用程序。我有这两个功能:
public function page1()
{
Session::put('test', '1');
$value = Session::get('test');
echo 'test: '.$value;
}
public function page2()
{
$value = Session::get('test');
echo 'test: '.$value;
}
我首先转到 localhost/page1。我可以看到页面打印:
test: 1
然后我去 localhost/page2
但是页面打印:
test:
所以 session 似乎没有在 View 之间共享。为什么?这是一些配置问题吗?
这是 route.php:
Route::group(['prefix' => 'pages'], function()
{
Route::get('page1', 'AdminController@page1');
Route::get('page2', 'AdminController@page2');
});
最佳答案
我在 Controller 中编写了与您相同的代码,如下所示:
public function page1()
{
Session::put('test', '1 ');
$value = Session::get('test');
echo 'test: '.$value;
}
public function page2()
{
$value = Session::get('test');
echo 'test: '.$value;
}
路由文件也是一样的:
Route::group(['prefix' => 'pages'], function()
{
Route::get('page1', 'AdminController@page1');
Route::get('page2', 'AdminController@page2');
});
它工作正常-> 输出: http://localhost/laravel-5.2/public/pages/page1
test: 1
http://localhost/laravel-5.2/public/pages/page2
test: 1
关于Laravel session 在 View 之间不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37098005/