PHP Multidimensional Arrays
ในหน้าที่แล้ว เราได้อธิบายอาร์เรย์ที่เป็นรายการคู่คีย์/ค่าเพียงรายการเดียว
อย่างไรก็ตาม บางครั้งคุณต้องการเก็บค่าด้วยคีย์มากกว่าหนึ่งตัว สำหรับสิ่งนี้ เรามีอาร์เรย์หลายมิติ
PHP - อาร์เรย์หลายมิติ
อาร์เรย์หลายมิติคืออาร์เรย์ที่มีอาร์เรย์ตั้งแต่หนึ่งอาร์เรย์ขึ้นไป
PHP รองรับอาร์เรย์หลายมิติที่มีระดับความลึกสอง สาม สี่ ห้า หรือมากกว่านั้น อย่างไรก็ตาม อาร์เรย์ที่มีความลึกมากกว่าสามระดับนั้นยากต่อการจัดการสำหรับคนส่วนใหญ่
ขนาดของอาร์เรย์ระบุจำนวนดัชนีที่คุณต้องเลือกองค์ประกอบ
- สำหรับอาร์เรย์สองมิติ คุณต้องมีดัชนีสองตัวเพื่อเลือกองค์ประกอบ
- สำหรับอาร์เรย์สามมิติ คุณต้องมีสามดัชนีเพื่อเลือกองค์ประกอบ
PHP - อาร์เรย์สองมิติ
อาร์เรย์สองมิติคืออาร์เรย์ของอาร์เรย์ (อาร์เรย์สามมิติคืออาร์เรย์ของอาร์เรย์ของอาร์เรย์)
ขั้นแรก ให้ดูที่ตารางต่อไปนี้:
Name | Stock | Sold |
---|---|---|
Volvo | 22 | 18 |
BMW | 15 | 13 |
Saab | 5 | 2 |
Land Rover | 17 | 15 |
เราสามารถเก็บข้อมูลจากตารางด้านบนในอาร์เรย์สองมิติดังนี้:
$cars = array (
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2),
array("Land Rover",17,15)
);
ตอนนี้อาร์เรย์ $cars สองมิติมีสี่อาร์เรย์ และมีสองดัชนี: แถวและคอลัมน์
ในการเข้าถึงองค์ประกอบของอาร์เรย์ $cars เราต้องชี้ไปที่ดัชนีทั้งสอง (แถวและคอลัมน์):
ตัวอย่าง
<?php
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
เพื่อรับองค์ประกอบของอาร์เรย์ $cars (เรายังต้องชี้ไปที่ดัชนีทั้งสอง):
ตัวอย่าง
<?php
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>";
}
?>
อ้างอิงอาร์เรย์ PHP ที่สมบูรณ์
สำหรับการอ้างอิงที่สมบูรณ์ของฟังก์ชันอาร์เรย์ทั้งหมด ไปที่PHP Array Referenceทั้งหมดของเรา
ข้อมูลอ้างอิงประกอบด้วยคำอธิบายสั้น ๆ และตัวอย่างการใช้งาน สำหรับแต่ละฟังก์ชัน!