นิยามและการใช้งาน
ลำดับค่าที่คั่นด้วยเครื่องหมายจุลภาค (comma) แทนที่จะเป็นคู่ key=>value แต่ละองค์ประกอบในชุดข้อมูลนี้มีดัชนีตำแหน่งที่ไม่ซ้ำกันเริ่มจาก 0 จึงเรียกว่า Indexed Array (อาร์เรย์แบบดัชนี)
อ็อบเจ็กต์ Indexed Array สามารถสร้างได้โดยฟังก์ชัน array() และวิธีการกำหนดค่าด้วยการวางองค์ประกอบไว้ในวงเล็บเหลี่ยม []
รูปแบบไวยากรณ์
//อาร์เรย์ดัชนีใช้ฟังก์ชัน array() $arr=array(val1, val2,val3,..); //อาร์เรย์ดัชนีใช้วิธีการกำหนดค่า $arr=[val1, val2, val3,..];
องค์ประกอบในอาร์เรย์สามารถเป็นชนิด PHP ใดๆ ก็ได้ สามารถเข้าถึงองค์ประกอบจากอาร์เรย์ด้วยดัชนีได้ตามไวยากรณ์:
$arr[index];
รุ่น PHP
การใช้วงเล็บเหลี่ยม [] สำหรับการกำหนดอาร์เรย์ใช้ได้ตั้งแต่ PHP 5.4
ตัวอย่างต่อไปนี้ใช้วงเล็บเหลี่ยมสร้างอาร์เรย์ดัชนี:
ตัวอย่าง
<?php $arr=[10, "ten",10.0, 1.0E1]; var_dump($arr); ?>
ผลลัพธ์
array(4) { [0]=> int(10) [1]=> string(3) "ten" [2]=> float(10) [3]=> float(10) }
ตัวอย่างนี้ใช้ฟังก์ชัน array() สร้างอาร์เรย์ดัชนี:
ตัวอย่าง
<?php $arr=array(10, "ten",10.0, 1.0E1); var_dump($arr); ?>
ผลลัพธ์
array(4) { [0]=> int(10) [1]=> string(3) "ten" [2]=> float(10) [3]=> float(10) }
สามารถวนลูปองค์ประกอบอาร์เรย์ด้วย foreach และ for loop ได้ดังนี้:
ตัวอย่าง
<?php $arr=array(10, "ten",10.0, 1.0E1); //ใช้ for loop ใช้ count() หาขนาดอาร์เรย์ for ($i=0;$i < count($arr); $i++){ echo $arr[$i] . " "; } echo "\n"; //ใช้ foreach loop foreach($arr as $i){ echo $i . " "; } ?>
ผลลัพธ์
10 ten 10 10 10 ten 10 10
ตัวอย่างนี้แสดงการแก้ไขค่าที่ดัชนีเฉพาะโดยใช้วงเล็บเหลี่ยม เพื่อเพิ่มองค์ประกอบใหม่ ให้เว้นวงเล็บเหลี่ยมว่างไว้ ดัชนีจำนวนเต็มที่ว่างอยู่ถัดไปจะถูกใช้:
ตัวอย่าง
<?php $arr=array(10, "ten",10.0, 1.0E1); //แก้ไของค์ประกอบที่มีอยู่ด้วยดัชนี $arr[3]="Hello"; //เพิ่มองค์ประกอบใหม่ใช้ดัชนีถัดไป $arr[]=100; for ($i=0; $i< count($arr); $i++){ echo $arr[$i]; } ?>
ผลลัพธ์
10 ten 10 Hello 100