for循环与嵌套list()之间的区别

时间:2016-04-12 07:19:11

标签: php for-loop while-loop

有人能告诉我这两个循环/代码片段之间有什么区别吗?

我得到相同的输出,但是教科书表明外圈和内圈有区别?任何澄清都会有所帮助。我不认为我理解每个功能的列表。

数组定义:

$newArray  = array(array('CODE' => 'TIR', 'Description' =>'TIRES', 'Price' => 100),
                   array('CODE' => 'OIL', 'Description' => 'Oil', 'Price' =>10),
                   array('CODE' => 'SPK', 'Description' => 'Spark Plug', 'Price' =>40)
             );

代码段1:

for ($row = 0; $row < 3; $row ++)
{           
    echo ' |'.$newArray[$row]['CODE'].'| '.$newArray[$row]['Description']. '| '.$newArray[$row]['Price'];
    echo  '<br />';
    echo  '<br />';      
}

代码段2:

for ($row =0; $row <3; $row ++)
{
    while (list($key, $value) = each ($newArray[$row]))
    {
        echo "|$value";
    }
    echo  '<br />';
    echo  '<br />';
}

1 个答案:

答案 0 :(得分:1)

是的,如果你从算法的角度来看这是有区别的。

第一个时间复杂度为O(n),第二个时间复杂度为O(n 2 )。

所以,第一个更有效率。