• php中遍历数组的方法


    参考网址:http://www.jb51.net/article/29949.htm

    这三种方法中效率最高的是使用foreach语句遍历数组。从PHP4开始就引入了foreach结构,是PHP中专门为遍历数组而设计的语句,推荐大家使用。先分别介绍这几种方法
     
    PHP中遍历数组有三种常用的方法:
    一、使用for语句循环遍历数组;
    二、使用foreach语句遍历数组;
    三、联合使用list()、each()和while循环遍历数组。
    这三种方法中效率最高的是使用foreach语句遍历数组。从PHP4开始就引入了foreach结构,是PHP中专门为遍历数组而设计的语句,推荐大家使用。先分别介绍这几种方法。

    一、使用for语句循环遍历数组
    值得大家注意的是使用for语句循环遍历数组要求遍历的数组必须是索引数组。PHP中不仅有关联数组而且还有索引数组,所以PHP中很少用for语句循环遍历数组。
    实例代码如下:
    复制代码 代码如下:

    <?php
    $arr = array('http://www.jb51.net','脚本之家','PHP教程');
    $num = count($arr);
    for($i=0;$i<$num;++$i){
    echo $arr[$i].'<br />';
    }
    ?>

    注释:上例代码中我们先计算出数组$arr中元素的个数,然后才使用在for语句,这样做很高效的。因为如果是for($i=0;$i< count($arr);++$i)的话,每次循环都会计算数组$arr中元素的个数,而使用上面的方式可以减去这种开销。使用++$i也是为了提高效率,前面有文章我们提到过,建议大家再看看。
    上面代码的输出结果为:
    http://www.jb51.net
    脚本之家
    PHP教程

    二、使用foreach语句遍历数组
    使用foreach语句循环遍历数组有二种方式,我们使用的最多的还是第一种方式。介绍如下:
    第一种方式:
    foreach(array_expression as $value){
    //循环体
    }
    实例代码:
    复制代码 代码如下:

    <?php
    $arr = array('http://www.jb51.net','脚本之家','PHP教程');
    foreach($arr as $value){
    echo $value.'<br />';
    }
    ?>


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

    第二种方式:
    foreach(array_expression as $key=>$value){
    //循环体
    }
    实例代码:
    复制代码 代码如下:

    <?php
    //定义数组
    $arr = array('http://www.jb51.net','脚本之家','PHP教程');
    foreach($arr as $k=>$v){
    echo $k."=>".$v."<br />";
    }
    ?>


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

    实例代码:
    复制代码 代码如下:

    <?php
    //定义循环的数组
    $arr = array('website'=>'http://www.jb51.net','webname'=>'脚本之家')
    while(list($k,$v) = each($arr)){
    echo $k.'=>'.$v.'<br />';
    }
    ?> jb51.net

    输出结果为:
    website=>http://www.jb51.net
    webname=>PHP程序员

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

     
  • 相关阅读:
    计算排名人数
    显示出现次数
    正负数用不同颜色显示
    根据日期计算财政年度
    Sumifs函数区域参数的脾气
    HTTPPrint打印服务
    flutter心跳任务
    flutter开发Window应用
    flutter 强制屏幕坚屏显示
    flutter FutureBuilder应用
  • 原文地址:https://www.cnblogs.com/fengting/p/4206330.html
Copyright © 2020-2023  润新知