PHP遍历数组-注释版

PHP遍历数组-注释版


       本文讲解了php数组遍历的两种通用方法(foreach法和list() each() while循环法),并由一维数组推广到二维数组的循环遍历。代码和注释如下,希望对大家的学习产生帮助。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>数组遍历</title>
</head>
<body>
    
        // 首先,我们先解决一维数组键值对的遍历
        $arr1=["a"=>"html","b"=>"css","c"=>"js","d"=>"php"];
        // 由于值对应的键不是数字,所以传统for循环遍历是行不通的
        // 使用foreach遍历
        foreach ($arr1 as $key => $value) {
        //foreach 结构如上 as前$arr1对应数组名称,后面的$key是数组每一个元素的键,对应的值则是value 
            // echo "$arr1[$key]
"; //输出形式1
echo "$value
"
; //输出形式2(推荐) } echo "
"
; //使用 list() each() while循环遍历 while(list($key,$value)=each($arr1)){ //while里的判断从右向左看: 先调取每一个 arr1的元素,元素中包含的键和值对应赋值给$key和$value // echo "$arr1[$key]
"; //输出形式1
echo "$value
"
; //输出形式2(推荐) } echo "
"
; echo "
"
; echo "
"
; // 由一维数组,推广至二维数组 $arr2=array( "网络"=>array("网络基础","网络安全","网络服务"), "计算机"=>array("计算机硬件","计算机系统"), "程序"=>array("C++活到老学到老","python入门到精通","SQL入门到入土") ); //同样先使用foreach foreach ($arr2 as $key1 => $value1) { //这里我们得到了arr2中的每一个键值对,例如 "网络"=>array() //key1很好得到,我们输出下来 echo "$key1
"
; //但是我们无法直接通过echo得到value1中的值(因为value1的类型也是数组) //所以我们再使用一次foreach循环,遍历每一个value1里的键值 foreach ($value1 as $key2 => $value2) { //这样,我们就可以输出value2,也就得到了二维数组的值了 echo $value2."
"
;//(推荐) } } echo "
"
; echo "
"
; echo "
"
; //同理,each() list() while循环做法也是使用循环遍历,得到二维数组的值 while(list($key1,$value1)=each($arr2)){ echo "$key1
"
; while(list($key2,$value2)=each($value1)){ echo "$value2
"
; } } ?> </body> </html>

你可能感兴趣的:(php,数组,遍历,foreach)