PHP 8 是 PHP 的一個重要版本,它帶來了許多新功能和改進,巢狀迴圈(Nested Loops)是程式設計中的一個基本概念,允許在一個迴圈內嵌套另一個迴圈,這在處理多維陣列或表格數據時特別有用,以下是巢狀迴圈的介紹及其應用範例。
巢狀迴圈的基本結構
巢狀迴圈是指在一個迴圈內部再嵌套一個或多個迴圈。一般用來遍歷多維數據結構,例如多維陣列。
基本範例
以下是一個簡單的範例,示範如何使用巢狀迴圈來生成九九乘法表:
<?php
// 設定時區(依照需要調整)
date_default_timezone_set('Asia/Taipei');
// 開始生成九九乘法表,從 2 開始
for ($i = 2; $i <= 9; $i++) {
for ($j = 1; $j <= 9; $j++) {
echo "$i x $j = " . ($i * $j) . "\t";
}
echo "\n"; // 使用換行符號,確保每行結果分開
}
?>
巢狀迴圈的應用
巢狀迴圈廣泛應用於處理多維陣列、表格數據、矩陣運算等場合。
應用範例
多維陣列的遍歷: 假設有一個多維陣列,巢狀迴圈可以用來遍歷每一個元素。
<?php
$multiArray = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
for ($i = 0; $i < count($multiArray); $i++) {
for ($j = 0; $j < count($multiArray[$i]); $j++) {
echo $multiArray[$i][$j] . " ";
}
echo "\n";
}
?>
表格數據的生成: 巢狀迴圈可以用來生成 HTML 表格,這在動態網站開發中非常有用。
<?php
echo "<table border='1'>";
for ($row = 1; $row <= 5; $row++) {
echo "<tr>";
for ($col = 1; $col <= 5; $col++) {
echo "<td>" . $row * $col . "</td>";
}
echo "</tr>";
}
echo "</table>";
?>
矩陣運算: 巢狀迴圈可以用來進行矩陣的加法、乘法等運算。
<?php
$matrixA = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
$matrixB = [
[9, 8, 7],
[6, 5, 4],
[3, 2, 1]
];
$result = [];
for ($i = 0; $i < 3; $i++) {
for ($j = 0; $j < 3; $j++) {
$result[$i][$j] = $matrixA[$i][$j] + $matrixB[$i][$j];
}
}
for ($i = 0; $i < 3; $i++) {
for ($j = 0; $j < 3; $j++) {
echo $result[$i][$j] . " ";
}
echo "\n";
}
?>
結論
巢狀迴圈在 PHP 8 中是一個強大且靈活的工具,能夠幫助我們高效地處理多維數據結構,無論是生成九九乘法表、多維陣列遍歷、表格生成還是矩陣運算,巢狀迴圈都能派上用場,掌握 PHP 8 巢狀迴圈的使用方法,將大大提高程式設計的效率和靈活性。
延伸閱讀