如何使用laravel分页增加行号?当我使用分页时,我转到第2页及以上,它将回到开头。例如,我将分页(3)
<thead>
<tr>
<th>No</th>
<th>Name</th>
</tr>
</thead>
<tbody>
<?php $i = 1; ?>
@foreach ($telephone->results as $telp)
<tr>
<td>
{{$i++}}
</td>
<td>{{ $telp->name }}</td>
</tr>
@endforeach
</tbody>
当我转到第2页时,该号码将再次从1开始。
当我转到第2页时,我需要制作它,它将从4开始
您应该能够使用getFrom
方法获取当前页面结果的起始编号。因此,不应该设置$i = 1;
,你应该能够做到这一点。
<?php $i = $telephone->getFrom(); ?>
在Laravel 3中没有getFrom
方法,因此您需要手动计算它。
<?php $i = ($telephone->page - 1) * $telephone->per_page + 1; ?>
在Laravel 5.3中你可以使用firstItem():
@foreach ($items as $key => $value)
{{ $items->firstItem() + $key }}
@endforeach
以下工作与laravel 5.4
<?php $i = ($telephone->currentpage()-1)* $telephone-
>perpage() + 1;?>
@foreach($telephone as $whatever)
<td> {{ $i++ }}</td>
@endforeach
编辑以下适用于上面的laravel 5.7
@foreach ($telephone as $key=> $whatever)
<td>{{ $key+ $telephone->firstItem() }}</td>
@endforeach
Laravel 5.3
@foreach ($products as $key=>$val)
{{ ($products->currentpage()-1) * $products->perpage() + $key + 1 }}
@endforeach
您只需添加以下行即可
$i = ($telephone->currentpage()-1)* $telephone->perpage();
代替
$i = 1;
@php($sl = ($yourVariable->perPage() * $yourVariable->currentPage()) - ($yourVariable->perPage() - 1))
@foreach($yourVariable as $item)
<td>{{ $item->key_name }}</td>
.....
@php($sl++)
@endforeach
或完全避免使用php标签
@foreach ($users as $key => $user)
{{ (Input::get('page', 1) - 1) * $users->getPerPage() + $key + 1 }}
@endforeach