• wordpress CMS主题:ssmay主题wordpress CMS主题:ssmay主题
  • 首页 > PHP开发 > PHP数组的遍历方法

    PHP数组的遍历方法

    作者: 分类:PHP开发 点击: 2,470 次
    wordpress CMS主题:ssmay主题

      在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 速度较快。



      QQ二维码

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

    上一篇:
    下一篇:
    wordpress CMS主题:ssmay主题

    或许你会感兴趣的文章:

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    This site uses Akismet to reduce spam. Learn how your comment data is processed.