Laravel-未定义的变量


Laravel - Undefined variable

当变量显然在表中时,我很难访问它。

错误落在这一行:

@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

对变量执行var_dump。你可能引用错了。它可能是一个数组。你可能不得不这样引用它:

$alert[0]->alert_when