Dev to webs {Coding…}

เรียนรู้การพัฒนาซอฟเวอร์ เพื่อความรู้ที่ยั่งยืน

บทที่ 10: อาเรย์ใน PHP

1. อาเรย์ (Array) คืออะไร

อาเรย์ใน PHP เป็นตัวแปรที่ใช้เก็บค่าหลายๆ ค่าในตัวแปรเดียว โดยแต่ละค่าในอาเรย์สามารถเข้าถึงได้ด้วยดัชนี (index) หรือคีย์ (key) ซึ่งอาเรย์จะช่วยให้เราสามารถเก็บข้อมูลหลายค่าในรูปแบบที่มีโครงสร้างและเรียกใช้งานได้สะดวกยิ่งขึ้น


2. ประเภทของอาเรย์ใน PHP

PHP มีอาเรย์หลักๆ อยู่ 3 ประเภท ได้แก่:

  1. อาเรย์เชิงตัวเลข (Indexed Array) – ใช้ดัชนีเป็นตัวเลขในการเข้าถึงข้อมูล
  2. อาเรย์เชิงสัมพันธ์ (Associative Array) – ใช้คีย์เป็นข้อความในการเข้าถึงข้อมูล
  3. อาเรย์หลายมิติ (Multidimensional Array) – อาเรย์ที่เก็บอาเรย์อีกชั้นหนึ่งหรือหลายชั้น

3. การสร้างและใช้งานอาเรย์ใน PHP

3.1 อาเรย์เชิงตัวเลข (Indexed Array)

อาเรย์เชิงตัวเลขใน PHP ใช้ดัชนีตัวเลขในการเข้าถึงค่า โดยดัชนีเริ่มต้นที่ 0

การสร้างอาเรย์เชิงตัวเลข

<?php
$fruits = array("แอปเปิ้ล", "กล้วย", "ส้ม");
?>

หรือ

<?php
$fruits = ["แอปเปิ้ล", "กล้วย", "ส้ม"];

?>

การเข้าถึงค่าในอาเรย์

<?php
echo $fruits[0];  // ผลลัพธ์: แอปเปิ้ล
echo $fruits[1];  // ผลลัพธ์: กล้วย
?>

การเพิ่มค่าในอาเรย์

<?php
$fruits[] = "มะม่วง";  // เพิ่มค่าที่ตำแหน่งท้ายสุดของอาเรย์

?>

3.2 อาเรย์เชิงสัมพันธ์ (Associative Array)

อาเรย์เชิงสัมพันธ์ใช้คีย์เป็นข้อความในการเข้าถึงข้อมูล ซึ่งเหมาะกับการเก็บข้อมูลที่มีความหมายเฉพาะเจาะจง

การสร้างอาเรย์เชิงสัมพันธ์

<?php
$person = array(
    "name" => "สมชาย",
    "age" => 25,
    "city" => "กรุงเทพฯ"
);
?>

การเข้าถึงข้อมูลในอาเรย์เชิงสัมพันธ์

<?php
echo $person["name"];  // ผลลัพธ์: สมชาย
echo $person["age"];   // ผลลัพธ์: 25
?>

การเข้าถึงข้อมูลในอาเรย์เชิงสัมพันธ์

<?php
echo $person["name"];  // ผลลัพธ์: สมชาย
echo $person["age"];   // ผลลัพธ์: 25
?>

3.3 อาเรย์หลายมิติ (Multidimensional Array)

อาเรย์หลายมิติใน PHP คืออาเรย์ที่เก็บอาเรย์อีกชั้นหนึ่งหรือหลายชั้น โดยสามารถเก็บข้อมูลในรูปแบบตารางได้

การสร้างอาเรย์หลายมิติ

<?php
$students = array(
    array("สมชาย", "กรุงเทพฯ", 20),
    array("สมหญิง", "เชียงใหม่", 22),
    array("สมศักดิ์", "ภูเก็ต", 21)
);

การเข้าถึงข้อมูลในอาเรย์หลายมิติ

<?php
echo $students[0][0];  // ผลลัพธ์: สมชาย
echo $students[1][1];  // ผลลัพธ์: เชียงใหม่
?>


4. ฟังก์ชันการจัดการอาเรย์ที่สำคัญใน PHP

PHP มีฟังก์ชันการจัดการอาเรย์หลายฟังก์ชันที่ใช้บ่อย เช่น

  • count() – ใช้นับจำนวนสมาชิกในอาเรย์
  • array_push() – เพิ่มค่าที่ตำแหน่งท้ายสุดของอาเรย์
  • array_pop() – ลบค่าสุดท้ายของอาเรย์
  • array_merge() – รวมอาเรย์สองตัวเข้าด้วยกัน
  • array_keys() – ดึงเฉพาะคีย์ทั้งหมดในอาเรย์เชิงสัมพันธ์
  • array_values() – ดึงเฉพาะค่าทั้งหมดในอาเรย์เชิงสัมพันธ์

ตัวอย่างการใช้งาน:

<?php
$fruits = array("แอปเปิ้ล", "กล้วย", "ส้ม");
array_push($fruits, "มะม่วง");  // เพิ่ม "มะม่วง" ในอาเรย์
echo count($fruits);            // ผลลัพธ์: 4
?>

5. การใช้งานอาเรย์ในโปรเจกต์จริง

อาเรย์ใน PHP ใช้งานได้หลากหลาย ตัวอย่างเช่น การเก็บรายการสินค้าในระบบร้านค้าออนไลน์ การเก็บข้อมูลผู้ใช้ หรือการเก็บข้อมูลที่มาจากฐานข้อมูลและต้องการจัดการเป็นชุดข้อมูล

ตัวอย่างการใช้อาเรย์เก็บรายการสินค้า

<?php
$products = array(
    array("ชื่อ" => "สินค้า A", "ราคา" => 100),
    array("ชื่อ" => "สินค้า B", "ราคา" => 200),
    array("ชื่อ" => "สินค้า C", "ราคา" => 150)
);

foreach ($products as $product) {
    echo "ชื่อสินค้า: " . $product["ชื่อ"] . ", ราคา: " . $product["ราคา"] . " บาท<br>";
}
?>

ในตัวอย่างนี้:

  • ใช้ foreach ในการวนลูปเพื่อแสดงผลชื่อสินค้าและราคาของแต่ละรายการในอาเรย์