在 PHP 中,一個(gè)非常重要的數(shù)據(jù)類型就是數(shù)組。PHP arrays 可以存儲(chǔ)多個(gè)值,并以索引方式訪問這些值,而其中最常見的數(shù)組就是二維數(shù)組,即 `array(array())`。
二維數(shù)組是由多個(gè)一維數(shù)組組合而成的數(shù)組。每個(gè)一維數(shù)組稱為行,而整個(gè)二維數(shù)組可視為表格或矩陣。例如,若您要存儲(chǔ)學(xué)生成績(jī)的二維數(shù)組,則每一行代表一個(gè)學(xué)生,每列代表一門課程。
以下是創(chuàng)建并訪問二維數(shù)組的示例代碼:
<?php // 創(chuàng)建二維數(shù)組 $grades = array( array("Alice", 98, 95, 94), array("Bob", 88, 92, 90), array("Charlie", 76, 80, 82) ); // 輸出 Alice 的數(shù)學(xué)成績(jī) echo $grades[0][2]; // 輸出 95 ?>在上述代碼中,我們使用 `array(array())` 的語法創(chuàng)建二維數(shù)組 $grades,并使用索引 [0][2] 來訪問 Alice 的數(shù)學(xué)成績(jī)。需要注意的是,索引從 0 開始計(jì)數(shù)。 可以使用 for 循環(huán)遍歷二維數(shù)組中的所有元素。以下是遍歷上述二維數(shù)組并輸出所有成績(jī)的示例代碼:
<?php for ($i = 0; $i< count($grades); $i++) { for ($j = 0; $j< count($grades[$i]); $j++) { echo $grades[$i][$j] . " "; } echo "<br>"; } ?>上述代碼中,我們使用兩個(gè)嵌套的 for 循環(huán)遍歷了整個(gè)二維數(shù)組。 除了使用索引方式訪問數(shù)組元素外,還可以使用 foreach 循環(huán)遍歷數(shù)組。以下是使用 foreach 循環(huán)遍歷上述二維數(shù)組并輸出所有成績(jī)的示例代碼:
<?php foreach ($grades as $row) { foreach ($row as $val) { echo $val . " "; } echo "<br>"; } ?>上述代碼中,我們使用兩個(gè)嵌套的 foreach 循環(huán)遍歷了整個(gè)二維數(shù)組。 最后,還可以動(dòng)態(tài)地向二維數(shù)組添加或刪除元素。以下是向上述二維數(shù)組添加一個(gè)新學(xué)生并輸出該學(xué)生所有成績(jī)的示例代碼:
<?php // 添加新學(xué)生 $grades[] = array("Dave", 81, 85, 88); // 輸出 Dave 的所有成績(jī) foreach ($grades[count($grades) - 1] as $val) { echo $val . " "; } ?>在上述代碼中,我們使用 `[]` 符號(hào)向二維數(shù)組 $grades 中添加了一個(gè)新的一維數(shù)組,即新學(xué)生 Dave 的所有成績(jī)。需要注意的是,我們使用 `count($grades) - 1` 訪問最后一個(gè)元素,即新添加的一維數(shù)組。 綜上所述,`array(array())` 語法可以用于創(chuàng)建二維數(shù)組,而使用索引、for 循環(huán)、foreach 循環(huán)和動(dòng)態(tài)添加元素等方式則可以方便地操作該數(shù)組。
下一篇php array(