我正在使用laravel 5.4。在控制器的方法中,我在会话中设置了一个值。如果我在设置会话后立即调用dd()
dd()
显示我刚刚设置的会话的所有会话。但是,如果我从另一个方法获取会话,则会话不可用。如果我从会话设置器方法中删除dd()
,我正在正确地进行会话。
我的代码如下:
public class TestController{
public function setSession(){
session(['test_key' => 'test_value']);//setting up the session
dd(session()->all());//getting the session properly here
}
public function showSession(){
dd(session()->all());//Here we are not getting the session
}
}
如果我们从dd()
会话中移除setSession()
,它就能正常运行。这是Laravel的一个错误还是故意的。我很想知道这个事实的根本原因。感谢
答案 0 :(得分:3)
dd()
表示" dump&死"并在其实现中使用die()
,它立即终止框架,并且不允许Laravel正确完成请求并保存会话。您可以使用dump()
来显示dd()
之类的信息,并且不会在之后关闭内核。
答案 1 :(得分:1)
删除此行dd(session()->all())
并再次尝试。