wordpress CMS主题 微信
Home > PHP开发 > PHP数组的遍历方法

PHP数组的遍历方法

高时银博客 PHP开发 点击: 1,646 次 0 0
  • 标签:
  • 在PHP中,怎样遍历数组?是不是也跟C语言一样,使用for循环来遍历?答案是:非也。在PHP中,遍历数组的方法要比在C语言当中要简单得多。PHP中遍历数组的方法主要有以下2种。

    1、foreach 循环方法。

    这是PHP数组遍历中使用最多的方法。

    语法结构:foreach(array  as  $value)   或者   foreach(array as  $key=>$value)

    这里的array代表数组,$key表示数组的键,$value表示值。下面通过实例来看看:

    $a=array(1,199,"abd",9);foreach($a as $key=> $value){

    echo "\$a[".$key."]=".$value."<br>";

    }

    输出结果:

    $a[0]=1$a[1]=199$a[2]=abd

    $a[3]=9

    下面这个实例是二维数组:

    $a=array(array("two"=>3,3),array("five"=>"hao",1));foreach($a as $key=> $value){

    foreach($value as $k=>$v)

    {

    echo "\$a[".$key."][".$k."]=".$v."<br>";

    }

    }

    输出结果:

    $a[0][two]=3$a[0][0]=3$a[1][five]=hao

    $a[1][0]=1

    注意:如果二维数组中还包含其它元素的话,如:$a=array(2,"one",array("two"=>3,3),"love",array("five"=>"hao",1)) 这中间的蓝色字符元素。用foreach遍历就会出错。

    2、while(list($key,$value)=each(array))循环遍历方法。

    我们直接来看个实例:

    $a=array(array("two"=>3,3),array("five"=>"hao",1));while(list($key,$value)=each($a)){

    while(list($k,$v)=each($value))

    {

    echo "\$a[".$key."][".$k."]:".$v."<br>";

    }

    }

    输出结果:

    $a[0][two]:3$a[0][0]:3$a[1][five]:hao

    $a[1][0]:1

    这里我们用到了list()函数与each()函数。each(array)返回的也是一个数组,如下例:

    $a=array("two"=>3,3,"five"=>"hao");                 print_r(each($a));

    输出结果:Array ( [1] => 3 [value] => 3 [0] => two [key] => two )   

    而list()函数可以用来接收each()函数里的对应的键号和键值,而且只接受each()函数返回的数组中的数字键。再通过while循环遍历整个数组,each()函数会不断地返回新的数组,而list()函数会不断地接收。最终达到遍历的目的。

     提示:

    foreach遍历与while遍历的区别在于:进行数组的“读”操作时 采用foreach 速度较快,大数据时效果明显;进行数组的“写”操作时 采用while 速度较快。


    文章作者:高时银博客
    本文地址:http://wanlimm.com/77201402131044.html
    版权所有 © 转载时必须以链接形式注明作者和原始出处!

    目前还没有评论。赶快来坐沙发吧。

    发表评论