PHP遍历数组常用方式(for,foreach,while,指针等等)

Posted 老夫看你根骨奇特

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP遍历数组常用方式(for,foreach,while,指针等等)相关的知识,希望对你有一定的参考价值。

1使用for循环遍历数组

         count($arr)用于统计数组元素个数
         for循环只能用于遍历,纯索引数组!!如果存在关联数组,count统计两种数组的总个数
         使用for循环遍历混合数组,导致数组越界


          $arr=array(1,2,3,4,5,6,7);
          $num=count($arr);//count最好放在for外面,可以让函数只执行一次
          for($i=0;$i<count($arr);$i++){
          echo "{$i}==>{$arr[$i]}<br/>";
          }

2.foreach循环遍历数组(foreach可以便利任何类型数组)

       例如:

      

            $arr=array(1,2,3,5,6,7,"one"=>9);
            foreach($arr as $item){

            echo "{$item}<br/>";
                 }
            foreach($arr as $key=>$item){

            echo "{$key}==>{$item}<br/>";
            }

3.3.使用list() ,each(),while()遍历数组

        用法:

             while(list($key,$value)=each($arr)){

               echo "{$key}-->{$value}<br/>";
               }

       list():用于将数组的每一个值,赋给list函数的每一个参数。(list函数的参数,必须小于等于 数组元素的个数)

eg:list($a,$b,$c)=[1,2,3];-->$a=1;$b=2;$c=3;
 注意:①list解析数组时直解析索引数组
         ②list可以通过传递空参数选择性解析数组的值
          list($a,,$b)=[1,2,3];-->$a=1;$b=3;
              each():用于返回数组当前指针所在位的键值对!并将指针后移一位;
            返回值:如果数组有下一位则返回一个数组。包含一个索引数组(0-键,1-键)和一个关联数组("key"-键,"value"-值);
            如果指针没有下一位返回false;

           ③ 数组使用each()遍历完一遍后,指针使用处于最后一位的下一位;即再用each()始终返回false
            如果要再用要用reset($arr)

4.使用数组指针遍历函数
            ①next:将数组指针,后移一位。并返回后一位的值;没有返回false;
            ②prev:将数组指针,前移一位。并返回后一位的值;没有返回false;
            ③end:将数组指针,移至最后一位。并返回后一位的值;空数组返回false;
            ④reset:将数组指针,恢复到第一位。并返回第一位的值;空数组返回false;
            ⑤key:返回当前指针所在位的键;
            ⑥current:返回当前指针所在位的值;

    

 


































以上是关于PHP遍历数组常用方式(for,foreach,while,指针等等)的主要内容,如果未能解决你的问题,请参考以下文章

PHP数组循环?

js 循环遍历变量的几种方式

PHP遍历数组的几种方法

PHP之流程控制

for foreach iterator 三种遍历方式的比较

深入解析php中的foreach问题