• 技术文章 >后端开发 >PHP问题

    php遍历一个数组的三种方法是什么

    青灯夜游青灯夜游2022-09-06 19:14:05原创427

    3种遍历数组的方法:1、用for语句遍历,语法“for($i=0;$i<数组长度;$i++){//循环代码}”;2、用foreach语句遍历,语法“foreach($arr as $k=>$v){//循环代码}”;3、用while配合each()与list()进行遍历,语法“while(list($k,$v)=each($arr)){//循环代码}”。

    php入门到就业线上直播课:进入学习

    本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

    PHP中遍历数组有三种常用的方法:

    这三种方法中效率最高的是使用foreach语句遍历数组。从PHP4开始就引入了foreach结构,是PHP中专门为遍历数组而设计的语句,推荐大家使用。先分别介绍这几种方法。

    方法1:使用for语句遍历

    for循环会将控制循环次数的变量预先定义在for语句中,因此for循环语句能够按照已知的循环次数进行循环操作,适用于明确知道脚本需要运行的次数的情况。

    for 循环的语法格式如下:

    for (初始化语句; 循环条件; 变量更新--自增或自减) {
        语句块;   
    }

    语句解析:

    示例

    <?php
    header("Content-type:text/html;charset=utf-8");
    $array= array(2,"数学","梨子",3.14,"榴莲",12);
    var_dump($array);
    echo "遍历数组:<br>";
    for ($i=0; $i < count($array); $i++) { 
        echo $i.":".$array[$i] . "<br/>";
    } 
    ?>

    输出结果:

    1.png

    方法2:使用foreach语句遍历

    foreach是专门为遍历数组而设计的语句,是遍历数组时常用的方法,在遍历数组方面提供了很大的便利;PHP5后还可以遍历对象(foreach仅能够应用于数组和对象)。

    foreach语句遍历数组与数组下标无关,且可以用于不连续的索引数组和以字符串为下标的关联数组。

    foreach语句有两种语法格式:

    foreach ($array as $value){
        语句块;
    }

    遍历给定的 $array 数组,在每次循环中将当前数组的值赋给 $value。

    示例

    <?php
    header("Content-type:text/html;charset=utf-8");
    $array= array(2,"数学","梨子",3.14,"榴莲",12);
    var_dump($array);
    echo "遍历数组:<br>";
    foreach ($array as $val){
        echo "值是:" . $val ;
        echo "<br/>";
    }
    ?>

    2.png

    foreach ($array as $key => $value){
        语句块;
    }

    遍历给定的 $array 数组,在每次循环中会将当前数组的值赋给 $value,键名赋给 $key。

    示例:

    <?php
    header("Content-type:text/html;charset=utf-8");
    $array= array(2,"数学","梨子",3.14,"榴莲",12);
    var_dump($array);
    echo "遍历数组:<br>";
    foreach ($array as $key => $value) { 
        echo "键名为:".$key.",键值为:".$value . "<br/>";
    } 
    ?>

    3.png

    说明:

    foreach语句在每次循环时,数组内部的指针会向前移一步,这样在下一次循环中会得到下一个数组元素,直到遍历到数组的末尾,停止遍历并退出循环。

    方法3:利用while语句+each()+list()遍历

    while循环语句是一种当型循环语句,先对循环条件进行判断,当条件满足,则执行循环体,不满足时则停止。

    each() 函数返回数组中当前的键值并将数组指针向前移动。在执行 each() 之后,数组指针将停留在数组中的下一个元素或者当碰到数组结尾时停留在最后一个元素。

    list() 函数用于在一次操作中给一组变量赋值。

    while循环+each() 函数+ list() 函数可以遍历数组,下面通过代码示例来看看:

    <?php
    header("Content-type:text/html;charset=utf-8");
    $array= array(2,"数学","梨子",3.14,"榴莲",12);
    var_dump($array);
    echo "遍历数组:<br>";
    while( list($key, $val) = each($array) ) {
        echo "$key => $val<br>";
    }
    ?>

    输出结果:

    4.png

    说明:

    while循环语句是一种当型循环语句,先对循环条件进行判断,当条件满足,则执行循环体,不满足时则停止。

    while循环的一般形式为:

    while(表达式){    //表达式为循环条件
        PHP语句块;  //PHP语句块为循环体
    }

    语句解析:

    while语句的流程图如下所示:

    1.png

    通常“表达式”是使用比较运算符或者逻辑运算符计算后的值

    注:“死循环”--无法靠自身的控制终止的循环

    推荐:《PHP视频教程

    以上就是php遍历一个数组的三种方法是什么的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php数组 php 循环遍历
    上一篇:php二维数组怎么求积 下一篇:php怎么去掉数组的第一个值
    VIP课程(WEB全栈开发)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• php数组怎么检测指定索引是否存在• php数组怎么去掉最后一项• php数组里面不能放中文吗• php数组怎么遍历替换某一字段(键名)的值• php数组怎么用while求和• php数组转字符串可以吗
    1/1

    PHP中文网