آرایه های چندبعدی (Multidimensional Arrays)
آرایه های چندبعدی یعنی آرایه ای از آرایه ها. «بعد (Dimension)» تعداد اندیس هاست. اندیس (Index) همان جایگاه است. این ساختار برای داده های جدولی عالی است. مانند نمره های کلاس در جدول.
تعریف آرایه دوبعدی
آرایه دوبعدی دو اندیس می خواهد. یکی برای سطر، یکی برای ستون.
$cars = array(
array("Volvo", 22, 18),
array("BMW", 15, 13),
array("Saab", 5, 2),
array("Land Rover", 17, 15)
);
دسترسی با دو اندیس
برای خواندن مقدار، ابتدا سطر بده. سپس ستون بده. خروجی، مقدار خانه است.
echo $cars[0][0] . ": In stock: " . $cars[0][1] . ", sold: " . $cars[0][2] . ".<br>";
echo $cars[1][0] . ": In stock: " . $cars[1][1] . ", sold: " . $cars[1][2] . ".<br>";
echo $cars[2][0] . ": In stock: " . $cars[2][1] . ", sold: " . $cars[2][2] . ".<br>";
echo $cars[3][0] . ": In stock: " . $cars[3][1] . ", sold: " . $cars[3][2] . ".<br>";
نکته: اگر بعد سوم داشتی، سه اندیس لازم است. کنترل سخت تر می شود.
حلقه تو در تو با for
برای پیمایش کامل، یک حلقه روی سطرها بگذار. سپس یک حلقه روی ستون ها.
for ($row = 0; $row < 4; $row++) {
echo "<p><b>Row number $row</b></p>";
echo "<ul>";
for ($col = 0; $col < 3; $col++) {
echo "<li>" . $cars[$row][$col] . "</li>";
}
echo "</ul>";
}
گام های عملی
- یک آرایه دوبعدی برای کارنامه بساز.
- با دو اندیس، نمره خاص را چاپ کن.
- با حلقه تو در تو، جدول را لیست کن.
جمع بندی سریع
- بعد یعنی تعداد اندیس های لازم.
- دوبعدی یعنی سطر و ستون.
- دسترسی با $array[row][col] انجام می شود.
- حلقه تو در تو پیمایش کامل می دهد.
نکته: برای مرتب سازی داده دوبعدی، صفحه مرتب سازی آرایه ها را ببین. برای فهرست توابع، صفحه توابع آرایه را دنبال کن.