laravel blade模板loop变量使用

简介

本文主要通过代码前后改造对比来介绍laravel blade模板loop变量使用。

环境

  • php > 5.6
  • laravel > 5.3

效果图

blade loop

测试用数据mock

    public function index()
    {
        $data = ['one', 'two', 'three', 'four', 'five'];
        return view('hello.index', ['data' => $data]);
    }

原代码

<p>foreach循环</p>
<p>数据读取开始</p>
<ul>
    @foreach($data as $item)
        {{--//循环位置 --}}
        <li>NO,{{$loop->iteration}}.{{$item}}</li>
    @endforeach

</ul>
<p>数据读取结束</p>
  • 传统作法是将数据循环以外的内容写到@foreach外面。
  • @foreach内部只执行简单的处理逻辑

使用loop变量

<p>foreach循环</p>
@foreach($data as $item)
    {{--//判断是否是循环头部--}}
    @if($loop->first)
        <p>数据读取开始</p>
        <ul>
    @endif
    {{--//循环位置 --}}
        <li>NO,{{$loop->iteration}}.{{$item}}</li>
    {{--//判断是否是循环尾部--}}
    @if($loop->last)
        </ul>
        <p>数据读取结束</p>
    @endif
@endforeach
  • 使用loop可以区分出当前执行位置,并在相应的位置做特殊处理
  • @foreach内部包含整个模组的显示逻辑,使代码更具观赏性

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注