Blade 模板

在Laravel 5.3中,@foreach指令提供了更增強大的功能,在每個@foreach循環體中均可以調用一個新的$loop變量。該變量是一個stdClass實例,包含了當前循環的元數據信息,讓咱們來看一下它提供的屬性:oop

  • index:從1開始的循環索引,1意味着是第一個條目。
  • remaining:循環還有多少個條目,好比當前是3箇中的第一個,那麼會返回2;
  • count:循環總條目數
  • first:是不是第一個
  • last:是不是最後一個
  • depth:循環的層級
  • parent:若是循環位於另外一個@foreach中,返回父循環引用,不然返回null

下面是一段示例代碼:code

<ul>
    @foreach ($pages as $page)
        <li>{{ $page->title }} ({{ $loop->index }} / {{ $loop->count }})</li>
    @endforeach
</ul>

若是有嵌套循環,能夠使用depth判斷,而且經過$loopparent屬性獲取相應信息:索引

<ul>
    @foreach ($pages as $page)
        <li>{{ $loop->index }}: {{ $page->title }}
        @if ($page->hasChildren())
        <ul>
            @foreach ($page->children() as $child)
                <li>{{ $loop->parent->index }}.{{ $loop->index }}:
                {{ $child->title }}</li>
            @endforeach
        </ul>
        @endif
    </li>
    @endforeach
</ul>

就是這樣簡單、方便。rem

相關文章
相關標籤/搜索