2014-10-31 110 views
0

我在訪問變量時遇到問題,當它清楚地顯示在表格內時。Laravel - 未定義的變量

錯誤落在這條線:

@if ($alert->alert_when == 1) 
@endif 

Undefined variable: alert_when - 是錯誤。

我之前dd()get()要求在訪問視圖中的數據,我可以看到變量它的檢索:

["alert_when"]=> string(1) "1" 

dd打印屏幕:

object(Illuminate\Database\Eloquent\Collection)#521 (1) { 
["items":protected]=> array(2) 
{ [0]=> object(Criteria)#492 (20) { ["connection":protected]=> NULL 
["table":protected]=> NULL ["primaryKey":protected]=> string(2) "id" 
["perPage":protected]=> int(15) ["incrementing"]=> bool(true) 
["timestamps"]=> bool(true) ["attributes":protected]=> array(15) { 
["id"]=> string(2) "19" ["user_id"]=> string(2) "23" 
["alert_when"]=> string(1) "1" 
["created_at"]=> string(19) "0000-00-00 00:00:00" 
["updated_at"]=> string(19) "0000-00-00 00:00:00" ["deleted_at"]=> NULL } 

我能夠訪問行內的其他數據,絕對沒有任何錯別字!

爲什麼會發生此錯誤?提前謝謝了。

更新

@if ($alert['alert_when'] == 1)返回沒有錯誤的正確響應。爲什麼當我可以像這樣訪問$alert->name

+0

那麼'$ alert'是一個對象還是數組?如果是後者,你可以使用'$ alert ['alert_when']' – 2014-10-31 14:40:42

+0

'來引用,我可以使用例如'{{$ alert-> alert_name}}'來訪問行內的其他數據。這工作完美。 – Ben 2014-10-31 14:42:15

+0

你的dd輸出表明它是一個數組;但顯示從dd完整的輸出是肯定的 – 2014-10-31 14:44:32

回答

2

對變量執行var_dump。你可能會引用它錯誤。它可能是一個數組。 您可能需要這樣引用它:

$alert[0]->alert_when