Laravel foreach 每个项目增加 3

Posted

技术标签:

【中文标题】Laravel foreach 每个项目增加 3【英文标题】:Laravel foreach each item increment by 3 【发布时间】:2018-11-16 06:55:25 【问题描述】:

我真的不知道这篇文章的标题并尝试搜索,但我不知道我应该把它放在什么关键字上,所以我创建了一个新的,但如果已经有类似的帖子。可以链接吗?我的问题是如何在下图中实现这个目标。

@php $i = 0; @endphp
@foreach ($posts as $key => $post)
 @if ($key % 2 === 0)
  <div class="row">
   <div class="col-md-4"><img src=" $post->image " /></div>
   <div class="col-md-8">
    -  $i+=1 
    -  $i+=2 
    -  $i+=3 
   </div>
  </div>
 @else
 @endif
@endforeach

bootstrap 的备用类正在工作,但每个值会增加的数字是我不知道如何完成它。

【问题讨论】:

无论你想做什么,这都是不好的方法。视图用于显示内容,而使用 @php 仅用于极端情况。在控制器中预先计算数字并显示它们。无论哪种方式,你能否分享更大的图片我不明白你想要接近什么。 @Kyslik 在提供的图像上,每一行都有每个细节,包括图像。每边的数字只是一个普通数字,但按 3 计数。所以数组的第一行将显示数字为 1、2 和 3,然后数组的第二行将继续第一行的数字,即 4, 5和6等等。你明白我的意思吗? 【参考方案1】:

我不熟悉 Larval 语法,但对于逻辑,我认为您应该有更多类似的东西:

@php $i = 0; @endphp
@foreach ($posts as $key => $post)
 @if ($key % 2 === 0)
  <div class="row">
   <div class="col-md-4"><img src=" $post->image " /></div>
   <div class="col-md-8">
    -  ++$i 
    -  ++$i 
    -  ++$i 
   </div>
  </div>
 @else
  <div class="row">
   <div class="col-md-8">
    -  ++$i 
    -  ++$i 
    -  ++$i 
   </div>
   <div class="col-md-4"><img src=" $post->image " /></div>
  </div>
 @endif
@endforeach

我更改的注意事项: 1. 每个号码将$i 加一,否则您将跳过号码 2.当$key为NOT事件时,将图片打印在另一面。

再一次,我不熟悉 larval 语法,我也不知道你的 $posts 数组的键/值是什么(如果你的键不是交替的偶数/奇数,你就没有图像在左右之间来回切换)。

希望这能给你一些方向。

【讨论】:

啊,我明白你的意思,谢谢你,它完全可以正常工作。非常感谢!编辑:出于某种原因,我不能在一分钟内接受你的回答。我会等一下接受它:) 谢谢 旁注:如果$key 不是关联数组的一部分,而是数字的一部分(例如在集合中就是这种情况),您可以避免初始化变量$i 并使用$key + 1 .

以上是关于Laravel foreach 每个项目增加 3的主要内容,如果未能解决你的问题,请参考以下文章

Laravel Eloquent 验证请求的 items 字段 foreach

Laravel foreach在一个项目?

使用foreach在数据库laravel javascript中双重输入每个输入类型的文本

在 foreach 循环中删除重复项(但计算它们) - Laravel 8

laravel 刀片模板变量

如何在 laravel 中解码 Json 对象并在 laravel 中应用 foreach 循环