這是一個困擾我一段時間的問題。Laravel 5.4 - 數組返回NULL而不是數值
我有一個服務提供程序將數據傳遞到所有視圖,每次側邊欄呈現。像這樣:
`
public function boot()
{
$userrole = array (DB::table('users')->where('id','=', Auth::id())->value('role'));
$menucase1 = [3,4,9,10];
$menucase2 = [1,2,3,10];
$menucase3 = [1,3,4,9,10];
$menucase4 = [4,9];
$commondata = compact('userrole','menucase1','menucase2','menucase3','menucase4');
view()->share('commondata', $commondata);
View::composer('sidebar', function ($view) {
$userrole = array (DB::table('users')->where('id','=', Auth::id())->value('role'));
$menucase1 = [3,4,9,10];
$menucase2 = [1,2,3,10];
$menucase3 = [1,3,4,9,10];
$menucase4 = [4,9];
$commondata = compact('userrole','menucase1','menucase2','menucase3','menucase4');
$view->with('commondata', $commondata);
});
}`
做一個{{ dd($commondata) }}
返回menucase陣列正確的值,但NULL
爲$userrole
如果我在控制器聲明相同$userrole
變量並調用變量在視圖中,所述收到的數據是正確的。
這是怎麼發生的?
在此先感謝
這是因爲會話啓動後控制器創建。 – KoIIIeY
所以,只需檢查Auth :: id - 它將爲空。 – KoIIIeY
謝謝,我剛剛打印了userid,就像這個'{{Auth :: id()}}'一樣,它返回了一個值。 –