我想访问一个Array,它保存在另一个数组中。
我有一个看起来像这样的作者模型:
public function chapters() {
return $this->hasManyThrough('Chapter', 'Book');
}
然后我想继续抓住所有章节,这些章节是由作者写的:
$chapters = Author::with('chapters')->where('id', $author->id()->get());
但是当我想要返回章节时,它们会被保存在一个数组中。
return dd($chapters->toArray());
看起来像这样:
array (size=1)
0 =>
array (size=15)
'id' => int 4
'email' => string 'user@email.com' (length=18)
'chapters' =>
array (size=7)
0 =>
array (size=15)
...
1 =>
array (size=15)
...
2 =>
array (size=15)
...
3 =>
array (size=15)
...
4 =>
array (size=15)
...
5 =>
array (size=15)
...
6 =>
array (size=15)
...
但我希望我的数组实际上看起来像这样:
array (size=4)
0 =>
array (size=15)
'id' => int 504
'rating1' => int 48
'rating2' => int 51
1 =>
array (size=15)
'id' => int 505
'rating1' => int 96
'rating2' => int 96
2 =>
array (size=15)
'id' => int 506
'rating1' => int 7
'rating2' => int 5
3 =>
array (size=15)
'id' => int 507
'rating1' => int 21
'rating2' => int 21
这样我才能真正做到这一点:
return dd($chapters->lists('rating1'));
我目前如何获得章节的可访问数组?
谢谢和亲切的问候,乔治
答案 0 :(得分:1)
你需要的是:
$author = User::with('chapters')->find($id);
$chapters = $author->chapters;
// then:
$chapters->lists('rating1');