PHP多維數(shù)組
在前面的教程中,我們已經(jīng)了解了數(shù)組是一種數(shù)/值得簡單列表。
有時(shí)我們希望用一個(gè)以上的鍵來保存數(shù)據(jù),這樣就需要用到PHP的多維數(shù)組來實(shí)現(xiàn)了。
基礎(chǔ)知識(shí)
PHP多維數(shù)組指的是包含一個(gè)或多個(gè)以上的數(shù)組
PHP能理解為兩,三,四或五級(jí)甚至更多級(jí)的多維數(shù)組,不過,超過三級(jí)深的數(shù)組大多數(shù)人都于管理
?注釋 :數(shù)組的維度指示需要選擇元素的索引數(shù)
php二維數(shù)組
二維數(shù)組就是數(shù)組的數(shù)組,同理三維數(shù)組就是數(shù)組的數(shù)組的數(shù)組
注:二維數(shù)組需要兩個(gè)索引來選擇元素
實(shí)例
假設(shè)有個(gè)成績表
姓名 | 語文 | 數(shù)學(xué) | 英語? |
? ?小明 | ? ? 90 | ? ? 80 | ? ? 77 |
? ?小龍 | ? ? 88 | ? ?75 | ? ? 89 |
? ?小花 | ? ? 9 | ? ? 95 | ? ? 94 |
我們能夠在二維數(shù)組中保存上表的數(shù)組,
$arr=array(
? ?array("小明","90","80","77"),
? ?array("小龍","88","75","89"),
? ?array("小花","99","95","94"),
);
用代碼輸出結(jié)果:
<?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].":數(shù)學(xué):".$arr[0][2].":英語:".$arr[0][3]."<br>"; echo $arr[1][0]."---語文:".$arr[1][1].":數(shù)學(xué):".$arr[1][2].":英語:".$arr[1][3]."<br>"; echo $arr[2][0]."---語文:".$arr[2][1].":數(shù)學(xué):".$arr[2][2].":英語:".$arr[2][3]."<br>"; ?>
程序運(yùn)行結(jié)果:
小明---語文:90:數(shù)學(xué):80:英語:77
小龍---語文:88:數(shù)學(xué):75:英語:89
小花---語文:99:數(shù)學(xué):95:英語:94
我們也可以在for循環(huán)中使用另一個(gè)for循環(huán),來獲得數(shù)組中的元素
實(shí)例
<?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>行數(shù)$x</p>"; echo"<ul>"; for($row=0;$row<3;$row++){ echo "<li>".$arr[$x][$row]."</li>"; } echo"</ul>"; } ?>
程序運(yùn)行結(jié)果:
行數(shù)0
? ?小明
? ?90
? ?80
行數(shù)1
? ?小龍
? ?88
? ?75
行數(shù)2
? ?小花
? ?99
? ?95
PHP 三維數(shù)組
注:二維數(shù)組需要兩個(gè)索引來選擇元素
實(shí)例
<?php $name=array( array( array('tom','andy','jack'), array('row','laya','lis') ), ); print_r($name[0][1][1]); ?>
程序運(yùn)行結(jié)果:
laya