2015-08-20 68 views
0

一個項目我推一個數組Laravel會議:Laravel永遠不會忘記從會議

"accountConfirm" => array:1 [ 
    0 => array:2 [ 
     "table" => "teacher" 
     "id" => 37 
    ] 
    ] 

當我打電話給Session::flush()Session::forget('accountConfirm')並在下面一行使測試

if (Session::has('accountConfirm')) 
{ 
    // false 
} 

但之後,不刪除功能(刷新,忘記)當我做同樣的測試時:

if (Session::has('accountConfirm')) 
{ 
    // true 
} 

爲了確保,我不再推這個項目。

爲什麼會出現這種情況?

+1

我有點困惑,如果你不刪除會話你爲什麼期望它應該被刪除?每個*測試*都會在會話中添加'accountConfirm',或者您是否曾經這樣做過,並期望在刪除該項目後消失? –

+0

@SpencerWieczorek現在我也很困惑。如果調用'Session :: forget('accountConfirm')'我期望這個項目應該從'Session'數組中移除並且不能訪問。這是錯誤的? –

+0

@SpencerWieczorek因爲它是我想要的數據不會在會話中繼續 –

回答

0

將您的路線複製並過去,並導航到每個網址以查看結果。

Route::get('/session/set',function(){ 
    Session::put('name','John'); 
    if (Session::has('name')){ 
    echo Session::get('name'); 
    } 
}); 

Route::get('/session/forget/',function(){ 
    Session::forget('name'); 
    if (Session::has('name')){ 
    echo Session::get('name'); 
    }else{ 
    echo 'Name is not set'; 
    } 
});