laravel blade $loop index 和 remaining 取值问…

2018-06-22 05:14:40来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

laravel 5.3 blade 新增$loop变量

 

文档如下:

在Laravel 5.3中,@foreach指令提供了更加强大的功能,在每一个@foreach循环体中都可以调用一个新的$loop变量。该变量是一个stdClass实例,包含了当前循环的元数据信息,让我们来看一下它提供的属性:

  • index:从1开始的循环索引,1意味着是第一个条目。
  • remaining:循环还有多少个条目,比如当前是3个中的第一个,那么会返回2;
  • count:循环总条目数
  • first:是否是第一个
  • last:是否是最后一个
  • depth:循环的层级
  • parent:如果循环位于另一个@foreach中,返回父循环引用,否则返回null

data =['a','b','c','d'];

@foreach($data as $v)
  <p>
  {{$loop->count}}       // 输出 4
  {{$loop->index}}   //输出0,1,2,3
  </p>
  @foreach($data as $key=>$value)
  <p>
  @if($loop->first)
    {{$loop->parent->depth}}   // 1 返回父循环,父循环层级为1
  @elseif($loop->last)       //最后
    {{$loop->depth}}       //2 当前循环层数2
  @else
    {{$loop->remaining}}   //2,1
  @endif
  </p>
  @endforeach
@endforeach

发现$loop->index ,$loop->remaining都是从0开始计数,并不是从1开始

后怀疑是否和键值有关,测试data=[1=>'a',2=>'b',3=>'c',4=>'d'];

测试结果还是一致。

后续再看一下英文文档吧。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:[Linux] PHP程序员玩转Linux系列-Nginx中的HTTPS

下一篇:如何让Composer的autoload支持自定义文件后缀名