如何计算拉拉维尔刀片上的 +-*/%


@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,您可以将其设置为所需的任意数量的列

相关内容

  • 没有找到相关文章

最新更新