Php 获取foreach中对象的位置(索引)?
在我的视图中,我有一个简单的foreach块,如下所示Php 获取foreach中对象的位置(索引)?,php,laravel,Php,Laravel,在我的视图中,我有一个简单的foreach块,如下所示 @foreach ($teams as $key => $team) {{ str_ordinal($key + 1) }} @endforeach 现在我正在显示关键点,尽管它并不准确。这是一张图片: 如何显示当前迭代的实际位置?我按我的团队下单集合,但我不确定如何获得该循环中当前交互的位置?在传递到模板之前,您可以对数据应用数组值: array_values($teams); 或者,根据这一点,您可以使用特殊的$loop变量
@foreach ($teams as $key => $team)
{{ str_ordinal($key + 1) }}
@endforeach
现在我正在显示关键点,尽管它并不准确。这是一张图片:
如何显示当前迭代的实际位置?我按我的
团队下单
集合,但我不确定如何获得该循环中当前交互的位置?在传递到模板之前,您可以对数据应用数组值
:
array_values($teams);
或者,根据这一点,您可以使用特殊的
$loop
变量。我想您需要$loop->iteration
属性(以1
开头)或$loop->index
(以0
开头):
您可以使用
$loop->index
获取索引。例如:
@foreach ($teams as $team)
{{ $loop->index }}
@endforeach
将显示0,1,2,3,4。。。直到最后一个元素位置。使用
for
循环,而不是foreach
。你会把它们整理好的
$count = count($teams) ;
for($i=1;$i<=$count;$i++) {
// your code here using $i as the position
}
$count=count($teams);
对于($i=1;$i您想显示当前索引的值吗?$loop
的可能重复项?如果您的意思是$teams
,那么这就行不通。如果您是指Laravel的$loop
,那么它会抛出未定义的属性:stdClass::$interaction
循环实际上以0开头,因此它会显示0,1,2,3,…这是使用for,我是在刀片中使用foreach,我认为刀片不支持。刀片100%支持循环,只使用@循环($I…)…@endfor
请参见以获取参考。这抛出了未定义的属性:stdClass::$interaction
迭代
,没有N
$loop->interaction
正是我想要的,谢谢你详细的回答!
$count = count($teams) ;
for($i=1;$i<=$count;$i++) {
// your code here using $i as the position
}