for循环与php中的赋值

时间:2013-05-01 18:30:27

标签: php for-loop foreach variable-assignment

当我想迭代一个数组时,我通常会这样做:

foreach ($array as $a)
{
   //do something with $a
}

我只是想知道是否可以使用for循环执行此类操作:

for ($i = 0; $i < count($array); $a = $array[$i]; $i ++)
{
   //do something with $a
}

编辑:当我测试上面的代码时,for语法无效。

4 个答案:

答案 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的赋值移动到实际循环中。