PHP多維數組

在前面的教學中,我們已經了解了陣列是一種數/值得簡單清單。

有時我們希望用一個以上的鍵來保存數據,這樣就需要用到PHP的多維數組來實現了。


基礎知識

#PHP多維陣列指的是包含一個或多個以上的數組

PHP能理解為兩,三,四或五級甚至更多級的多維數組,不過,超過三級深的數組大多數人都於管理

 註解:陣列的維度指示需要選擇元素的索引數

php二維陣列

##二維數組就是數組的數組,同理三維數組就是數組的數組的數組

###:###二維數組需要兩個索引來選擇元素###### #######實例#########################假設有一個成績表####  數學#  英文 #   小明
  姓名#  語文

#########   小明##############   小明## #######    90######    80######    77###########卷#####    89############   小花######    9######    95######    94############################################C ##

我們能夠在二維數組中保存上表的數組,

$arr=array(
   array("小明" ,"90","80","77"),
   array("小龍","88","75","89"),
   array("小花","99"," 95","94"),
);

用程式碼輸出結果:

<?php
header("Content-type:text/html;charset=utf-8");
$arr=array(
    array("小明","90","80","77"),
    array("小龙","88","75","89"),
    array("小花","99","95","94"),
);
echo $arr[0][0]."---语文:".$arr[0][1].":数学:".$arr[0][2].":英语:".$arr[0][3]."<br>";
echo $arr[1][0]."---语文:".$arr[1][1].":数学:".$arr[1][2].":英语:".$arr[1][3]."<br>";
echo $arr[2][0]."---语文:".$arr[2][1].":数学:".$arr[2][2].":英语:".$arr[2][3]."<br>";
?>

程式執行結果:

##小明---語文:90:數學:80:英文:77 小龍---語文:88:數學:75:英文:89
小花---語文:99:數學:95:英文:94


我們也可以在for迴圈中使用另一個for迴圈,來取得陣列中的元素


實例

<?php
header("Content-type:text/html;charset=utf-8");
$arr=array(
    array("小明","90","80","77"),
    array("小龙","88","75","89"),
    array("小花","99","95","94"),
);
for($x=0;$x<3;$x++){
    echo "<p>行数$x</p>";
    echo"<ul>";
    for($row=0;$row<3;$row++){
        echo "<li>".$arr[$x][$row]."</li>";
    }
    echo"</ul>";
}
?>

程式運行結果:

行數0

•  小明
•  90
•  80
行數1
•  小龍
•  88
•  75
行數2
•  小花
•  99
•  95


#PHP 三維數組



##################################################### ####:#########二維陣列需要兩個索引來選擇元素##################實例######## ##
<?php
$name=array(
    array(
        array('tom','andy','jack'),
       array('row','laya','lis')
    ),
);
print_r($name[0][1][1]);
?>
#########程式運行結果:############laya#################### ######
繼續學習
||
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
header("Content-type:text/html;charset=utf-8");
$arr=array(
array("","90","80","77"),
array("","88","75","89"),
array("","99","95","94"),
);
for($x=0;$x<3;$x++){
echo "<p>$x</p>";
echo"<ul>";
for($row=0;$row<3;$row++){
echo "<li>".$arr[$x][$row]."</li>";
}
echo"</ul>";
}
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
图片放大关闭