@foreach ($searchalls as $searchall)
@php
$i=1
@endphp
{{$i }} ={{$loop->iteration}}%3
@if($i == 1 )
<div class="row clearfix">
@endif
<div class="col-md-4 column">
<h2>
{{$search_all->id }}Heading
</h2><p>once OK.
</p>
<p>
<a class="btn" href="#">View details »</a>
</p>
</div>
我在刀片上得到的结果是
1 =1%3
1 =2%3
1 =3%3
1 =4%3
无法获得剩余数字?
如何解决问题?
这样做
@foreach ($searchalls as $searchall)
@php
$i = 1;
$i = $loop->iteration%3;
@endphp
@if( $i == 1 )
<div class="row clearfix">
@endif
<div class="col-md-4 column">
<h2>
{{ $search_all->id }}Heading
</h2>
<p>
once OK.
</p>
<p>
<a class="btn" href="#">View details »</a>
</p>
</div>
一旦您的刀片模板字符串被渲染,您基本上无法使用 == 与 php 进行比较,在我看来,这正在
{{ $i }} = {{ $loop->iteration }}%3
如果您尝试的只是在一行中显示 3 列,那么您可以使用 chunk
方法使用更好的方法
@foreach ($searchalls->chunk(3) as $chunk)
<div class="row clearfix">
@foreach($chunk as $searchall)
<div class="col-md-4 column">
<h2>{{$searchall->id }}Heading</h2>
<p>once OK.</p>
<p>
<a class="btn" href="#">View details »</a>
</p>
</div>
@endforeach
</div>
@endforeach
如果你只想在 DOM 中进行数学运算,你可以使用它,或者@php @endphp
来防止显示结果
@foreach ($searchalls as $searchall)
{{$i = $loop->iteration %3}}
@endforeach
的 IF 语句
@foreach ($searchalls as $searchall)
@if($loop->iteration %3 == 1 )
<div class="row clearfix">
@endif
@endforeach
编辑:使用弹性框
如果你想使数字动态,你可以使用flexbox
@foreach ($searchalls->chunk(3) as $chunk)
<div style="display: flex;">
@foreach($chunk as $searchall)
<div style="flex:1">{{$searchall->id}}</div>
@Endforeach
</div>
@endforeach
而不是 3,您可以将其设置为所需的任意数量的列