是否有可能找到foreach索引?
在for循环中如下所示:
for ($i = 0; $i < 10; ++$i) {
echo $i . ' ';
}
$i会给你索引。
我必须使用for循环还是有一些方法在foreach循环中获得索引?
是否有可能找到foreach索引?
在for循环中如下所示:
for ($i = 0; $i < 10; ++$i) {
echo $i . ' ';
}
$i会给你索引。
我必须使用for循环还是有一些方法在foreach循环中获得索引?
当前回答
我认为最好的选择是这样的:
foreach ($lists as $key=>$value) {
echo $key+1;
}
这很简单,也很正常
其他回答
欧文有一个很好的答案。如果你只想要一个键,并且你正在处理一个数组,这可能也是有用的。
foreach(array_keys($array) as $key) {
// do stuff
}
当我必须在同一个上下文中使用foreach索引和值时,我用这种方法解决了:
$array = array('a', 'b', 'c');
foreach ($array as $letter=>$index) {
echo $letter; //Here $letter content is the actual index
echo $array[$letter]; // echoes the array value
}//foreach
我使用++$key而不是$key++从1开始。通常从0开始。
@foreach ($quiz->questions as $key => $question)
<h2> Question: {{++$key}}</h2>
<p>{{$question->question}}</p>
@endforeach
输出:
Question: 1
......
Question:2
.....
.
.
.
foreach(array_keys($array) as $key) {
// do stuff
}
需要注意的是,您可以在任何数组上调用key()来查找当前所在的键。正如你所猜测的,current()将返回当前值,next()将移动数组的指针到下一个元素。