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,指针等等)的更多相关文章

  1. JS中for...in循环陷阱及遍历数组的方式对比

    JavaScript中有很多遍历数组的方式,比较常见的是for(var i=0;i<arr.length;i++){},以及for...in...循环等,这些遍历都有各自的优缺点,下面来看看各种 ...

  2. PHP之旅3 php数组以及遍历数组 以及each() list() foreach()

    php的数组的定义 <?php //php中定义数组时可以通过索引直接进行赋值: $mArr[0]="哈哈"; $mArr[1]=70; $mArr[2]='haha'; e ...

  3. jquery遍历数组的方式

    1,for循环: var arr = new Array(13.5,3,4,5,6); for(var i=0;i<arr.length;i++){ arr[i] = arr[i]/2.0; } ...

  4. 集合遍历数组三种常用方式(Collecton和Map)

    Collection集合遍历数组的三种方式: 迭代器 foreach(增强for循环) JDK1.8之后的新技术Lambda 迭代器: 方法:public Iterator inerator():获取 ...

  5. Java中遍历数组的三种方式复习

    1 for循环遍历 通常遍历数组都是使用for循环来实现.遍历一维数组很简单,遍历二维数组需要使用双层for循环,通过数组的length属性可获得数组的长度. 程序示例: package captai ...

  6. js中数组遍历for与for in区别(强烈建议不要使用for in遍历数组)

    js中遍历数组的有两种方式 var array=['a'] //标准的for循环 for(var i=1;i<array.length;i++){ alert(array[i]) } //for ...

  7. 遍历数组中的元素(含es6方法)

    假如有这样一个数组.arr = [12,34,45,46,36,58,36,59],现在要遍历该数组. 方法1:以前我们可能会这样做: for(var i=0;i<arr.length;i++) ...

  8. for循环的运算 改变循环的控制流 死循环 遍历数组 定义方法 有名函数匿名函数 定义函数的方法取值 与 自己创建函数取值 局部与全局变量 次幂/随机数/取绝对值/向上取整/平方根

    今天学习的是for循环,对for循环的运算有了理解. document.write(" ")里的内容在网页上展示出来 有名函数非常重要!!!!!!!!!!!!!!!!!!!!!并且 ...

  9. JavaScript的使用以及JS常用函数(JS 遍历数组和集合)

    JavaScript入门 学习总结 1. 什么是 JavaScript 2. JavaScript 的特点 3. JS的使用 编写位置 基本语法 变量 打印变量 数据类型 innerHTML和inne ...

随机推荐

  1. arguments.callee 和 caller

    arguments arguments它是一个类数组对象,包含着传入函数中的所有参数.虽然 arguments 的主要用途是保存函数参数, 但这个对象还有一个名叫 callee 的属性,该属性是一个指 ...

  2. 10款流行的Markdown编辑器,总有一款适合你

    摘要:作为一个开源人,如果你不会使用Markdown语法,那你就OUT了!Markdown 是 2004 年由 John Gruberis 设计和开发的纯文本格式的语法,非常的简单实用. 作为一个开源 ...

  3. 【平台兼容性】jeecg3.7 兼容weblogic 部署改造方案

    MyEclipse 配置 WebLogic 10.3.3请参考: https://my.oschina.net/aini3884/blog/895689 常见问题: 1. problem: cvc-e ...

  4. 排序NB三人组

    排序NB三人组 快速排序,堆排序,归并排序 1.快速排序 方法其实很简单:分别从初始序列“6  1  2 7  9  3  4  5 10  8”两端开始“探测”.先从右往左找一个小于6的数,再从左往 ...

  5. python中split()、os.path.split()函数用法

    一.Python split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则仅分隔 num 个子字符串 str.split(str="", num=string ...

  6. linux环境运行java项目并有外部引用jar

    eclipse目录结构: linux目录结构: lib目录结构: 其中除了IMT_ENCODING_DSP.jar其余的都是外部引用的jar IMT_ENCODING_DSP.jar是java项目打包 ...

  7. LeetCode 题解:Populating Next Right Pointers in Each Node I & II 二有难度。考虑不全面。

    每次应该把root同层的右侧节点传过来.如果没有,就传NULL. 同时,应该是先右后左. 感觉这次的代码还挺简洁的.. void construct(struct TreeLinkNode *root ...

  8. TWebBrowser禁止弹出Alert对话框

    以前介绍过通过编写Webbrowser1的OnDocumentComplete事件响应代码可以拦截网页弹出的Alert等对话框,代码如下: procedure TForm1.WebBrowser1Do ...

  9. C# 如何利用反射,将字符串转化为类名并调用类中方法

    首先,先随便创建一个测试类 <span style="font-family:Microsoft YaHei;font-size:18px;">public class ...

  10. javascript:FileReader对象(读取文件)

    FileReader对象 1.检测浏览器对FileReader的支持 1 if(window.FileReader) { 2 var fr = new FileReader(); 3 // add y ...