我有这个循环:
@foreach($books as $listing)
<h4>{{ $books[$listing]['name'] }} - {{ $books[$listing]['author'] }}</h4>
<p>[[ $books[$listing]['location'] }} - {{ $books[$listing]['condition'] }}.</p>
@endforeach
它会产生错误:
Illegal offset type (View: then goes on to point to the .blade.php view path
。
我的数组元素基本上可以这样引用:$books[0]['author']
。我希望能够遍历数组并在每次迭代时更改[0]的值。
我对此非常陌生,任何帮助都会受到赞赏。
答案 0 :(得分:1)
您收到该错误的原因是您尝试使用$listing
作为$books
的密钥。相反,你应该做的事情如下:
@foreach($books as $key => $listing)
{{{ $listing['name'] }}} or {{{ $books[$key]['name'] }}}
@endforeach
答案 1 :(得分:1)
如果您使用foreach
,则不必再对原始数组编制索引。所以不要做
$books[$listing]['name']
你可以做到
$listing['name']
$listing
没有数组中元素的索引,而是数组本身的元素。
答案 2 :(得分:0)
要解决此错误,请使用您尝试循环的原始数组:
@foreach($books as $key => $listing)
{{{ $books['name'] }}} or {{{ $books['name'] }}}
@endforeach