Laravel 与符号未定义的集合 属性
Laravel collection with ampersand undefined property
我正在 dd
收集一个像这样的集合,因为我在寻找对象上的 属性 时遇到问题:
dd($this->plan);
输出:
Illuminate\Support\Collection {#5314
#items: array:3 [
"ageRange" => "Under 18"
"goal" => null
"duration" => & "Indefinitely"
]
}
我正在寻找这个对象上的 属性 duration
,但是当我点击:$plan->duration
我得到以下错误:
dd($this->plan->duration);
我收到以下错误:
Property [duration] does not exist on this collection instance.
我相信这与此有关 &
但我不确定它为什么在那里或从哪里来
那是一个数组,不是Collection里面的一个对象。试试 $this->plan->get('duration')
或 $this->plan['duration']
正如 @Peppermintology 评论中的 question/answer 所指出的,这是因为 'duration' 键是通过引用设置的。为了说明这一点,这里有一种在 tinker
控制台中重现该行为的快速方法:
我正在 dd
收集一个像这样的集合,因为我在寻找对象上的 属性 时遇到问题:
dd($this->plan);
输出:
Illuminate\Support\Collection {#5314
#items: array:3 [
"ageRange" => "Under 18"
"goal" => null
"duration" => & "Indefinitely"
]
}
我正在寻找这个对象上的 属性 duration
,但是当我点击:$plan->duration
我得到以下错误:
dd($this->plan->duration);
我收到以下错误:
Property [duration] does not exist on this collection instance.
我相信这与此有关 &
但我不确定它为什么在那里或从哪里来
那是一个数组,不是Collection里面的一个对象。试试 $this->plan->get('duration')
或 $this->plan['duration']
正如 @Peppermintology 评论中的 question/answer 所指出的,这是因为 'duration' 键是通过引用设置的。为了说明这一点,这里有一种在 tinker
控制台中重现该行为的快速方法: