有没有可能找到foreach
的索引?
在一个for
循环中,如下所示。
for ($i = 0; $i < 10; ++$i) {
echo $i . ' ';
}
$i
会给你索引。
我必须使用for
循环,还是有什么方法可以在foreach
循环中获得索引?
你可以在你的foreach
中加入一个黑客,比如在每次运行时增加一个字段,这正是for
循环在一个数字索引数组中给你的。这样的字段将是一个需要手动管理(递增等)的伪指数。
一个foreach
会以$key
值的形式给你提供索引,所以这样的黑客应该没有必要。
例如,在一个foreach
中,
$index = 0;
foreach($data as $key=>$val) {
// Use $key as an index, or...
// ... manage the index this way..
echo "Index is $index\n";
$index++;
}
你可以在循环外创建$i
,并在循环的底部做$i++
。