当我想迭代一个数组时,我通常会这样做:
foreach ($array as $a)
{
//do something with $a
}
我只是想知道是否可以使用for
循环执行此类操作:
for ($i = 0; $i < count($array); $a = $array[$i]; $i ++)
{
//do something with $a
}
编辑:当我测试上面的代码时,for语法无效。
答案 0 :(得分:1)
用逗号替换第三个分号。这不是整个解决方案(任务太晚了),但它应该充分解释for语句的工作原理。
答案 1 :(得分:1)
跳过for循环的$ a = $ array [$ i]部分(这是循环的INSIDE,而不是循环的声明)
你应该这样做:
for ($i = 0; $i < count($array); $i ++)
{
$a = $array[$i]; //Gets value of element in array $array
//Do something with it...
}
你说你想要控制数组的元素。 您可以通过这样做(向foreach循环添加键值)来执行等价操作
foreach ($array as $key=>$i)
{
$a = $i[$key];
}
答案 2 :(得分:1)
for
循环不需要处理$a = $array[$i];
作为其参数的一部分。
你可以将它移动到循环体,如下所示:
for ($i = 0; $i < count($array); $i++){
$a = $array[$i];
//do something with $a
}
答案 3 :(得分:0)
for ($i = 0; $i < count($array); $i ++){
$a = $array[$i];
}
for循环定义需要您提供四个语句。将$ a的赋值移动到实际循环中。