是否有可能找到foreach索引?

在for循环中如下所示:

for ($i = 0; $i < 10; ++$i) {
   echo $i . ' ';
}

$i会给你索引。

我必须使用for循环还是有一些方法在foreach循环中获得索引?


当前回答

需要注意的是,您可以在任何数组上调用key()来查找当前所在的键。正如你所猜测的,current()将返回当前值,next()将移动数组的指针到下一个元素。

其他回答

foreach($array as $key=>$value) {
    // do stuff
}

$key是每个$array元素的索引

你可以在循环外创建$i,并在循环底部执行$i++。

我认为最好的选择是这样的:

foreach ($lists as $key=>$value) {
    echo $key+1;
}

这很简单,也很正常

foreach(array_keys($array) as $key) {
//  do stuff
}

需要注意的是,您可以在任何数组上调用key()来查找当前所在的键。正如你所猜测的,current()将返回当前值,next()将移动数组的指针到下一个元素。