浅谈PHP遍历数组的三种方法

这三种方法中效率最高的是使用foreach语句遍历数组。从PHP4开始就引入了foreach结构,是PHP中专门为遍历数组而设计的语句,推荐大家使用。先分别介绍这几种方法

PHP中遍历数组有三种常用的方法:
1. 使用for语句循环遍历数组。
2. 使用foreach语句遍历数组。
3. 联合使用list()、each()和while循环遍历数组。


  • for循环遍历

    $arr = array('num1','num2','num3');
    $count = count($arr);
    for($i = 0; $i < $count; ++$i)
    {
        echo $arr[$i].'
'
; } ?>

上列代码我们先计算出数组 arrfor使for( a r r 个 数 , 在 进 入 f o r 循 环 语 句 , 这 样 做 比 较 高 效 。 因 为 如 果 使 用 f o r ( i = 0; i<count( i < c o u n t ( arr); ++ i) i ) 的 话 , 每 次 循 环 都 会 计 算 数 组 arr的个数,而使用以上方法能减少这种开销。使用++$i 也是为了提高效率。

上面代码的输出结果为:
num1
num2
num3


  • foreach循环遍历
 
    $arr = array('num1','num2','num3'); 
    foreach($arr as $value){ 
        echo $value.'
'
; } ?>

每次循环中,当前元素的值被赋给变量$value,并且把数组内部的指针向后移动一步。所以下一次循环中会得到数组的下一个元素,直到数组的结尾才停止循环,结束数组的遍历。

上面代码的输出结果为:
num1
num2
num3


  • list()、each()和while循环遍历

    each()函数需要传递一个数组作为一个参数,返回数组中当前元素的键/值对,并向后移动数组指针到下一个元素的位置。
    list()函数,这不是一个真正的函数,是PHP的一个语言结构。list()用一步操作给一组变量进行赋值。

 
    $arr = array('num1','num2','num3'); 
    while(list($key,$value) = each($arr)){ 
        echo $key.'=>'.$value.'
'
; } ?>

输出结果为:
0 => num1
1 => num2
2 => num3


总结:上述三种循环遍历数组的方法中建议大家使用foreach语句循环遍历数组,效率更高。

你可能感兴趣的:(PHP)