Laravel - 未定义的变量

时间:2014-10-31 14:37:22

标签: php laravel laravel-4

我很难访问变量,当它明显存在于表格中时。

错误落在这一行:

@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

1 个答案:

答案 0 :(得分:1)

对变量执行var_dump。您可能错误地引用它。它可能是一个数组。 您可能需要像这样引用它:

$alert[0]->alert_when