$ reviews有10个阵列,我试图只显示前5个。这是我到目前为止所得到的。
@for ($i = 0; $i < 6; $i++)
@foreach ($reviews as $reviews; i++)
<p>Body</p>
@endforeach
@endfor
知道为什么这不起作用吗?
答案 0 :(得分:2)
只需使用take方法并运行foreach循环,就像这样
@foreach($reviews->take(5) as $review)
<p>{{ $review->body }}</p>
@endforeach
我认为这更简单,更清洁
答案 1 :(得分:1)
假设您使用Collections
,可以使用take
方法(请参阅here)方法:
$ collection = collect([0,1,2,3,4,5]);
$ chunk = $ collection-&gt; take(3);
$ chunk-&GT;所有();
// [0,1,2]
用法
$reviews2 = $reviews->take(5);
@foreach ($reviews2 as $review)
<p>{{ $review->body }}</p>
@endforeach
答案 2 :(得分:0)
您可以使用@if
限制@foreach
@for ($i = 0; $i < 6; $i++)
@foreach ($reviews as $review)
{{$i++}}
@if ($i < 1)
<p>Body</p>
@endif
@endforeach
@endfor
答案 3 :(得分:0)
您编写了foreach
<?php $i = 1; ?>
@foreach ($reviews as $review)
<p>Body</p>
@if ($i == 5)
break;
@endif
<?php $i++; ?>
@endforeach
答案 4 :(得分:0)
正如你所问。
知道为什么这不起作用吗?
因为这里有语法错误i++
@for ($i = 0; $i < 6; $i++)
@foreach ($reviews as $key=>$values)
<p>{{$i}} : Body</p>
@endforeach
@endfor
注意:将$reviews
行值更改为$values