簡體   English   中英

我們如何在 laravel php 刀片模板中為 foreach 循環定義循環變量

[英]how can we define a loop variable for foreach loop in laravel php blade tempalte

我試過這個,但它被打印在前面

{{ $x=1}}
@if(count($bookings))
    @foreach ($bookings as $data)
        <tr>
            <td>{!! $x !!}</td>
            <td>{!! $data->service->id !!}</td>
            <td>{!! $data->service->title !!}</td>
            <td>{!! $data->full_name !!}</td>
            <td>{!! $data->email !!}</td>
            <td>{!! $data->phone !!}</td>
            <td>{!! date('d-m-Y', strtotime($data->booking_date))  !!} {!! $data->slot_start_from !!}</td>
        {{$x++}}
    @endforeach

此代碼無效 x 的值已打印。 我不想在這里使用代碼 php 代碼歡迎任何好的建議

正如@RomanBobrik 所說,使用循環變量$loop來獲取迭代

    @foreach ($bookings as $data)
        <tr>
            <td>{{ $loop->iteration }}</td>
            <td>{{ $data->service->id }}</td>
            <td>{!! $data->service->title !!}</td>
            <td>{!! $data->full_name !!}</td>
            <td>{{ $data->email }}</td>
            <td>{!! $data->phone !!}</td>
            <td>{!! date('d-m-Y', strtotime($data->booking_date))  !!} {!! $data->slot_start_from !!}</td>

    @endforeach

您正在尋找循環變量,它存在於 Laravel Blade 中。

https://laravel.com/docs/5.8/blade#the-loop-variable

所以,只需使用:

<td>{!! $loop->index !!}</td>

如果您有 Laravel 5.2 及更低版本,則沒有循環變量。 在這種情況下,您可以使用@php快捷方式

@php $x=1 @endphp
...
<td>{!! $x++ !!}</td>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM