การเก็บวัตถุไว้ในอาร์เรย์ใน OOP ใน PHP
สมมติว่าเรามีคลาส User ดังนี้:
<?php
class User
{
public $name;
public $age;
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
มาเชื่อมต่อไฟล์ที่มีคลาสของเรากับไฟล์ index.php:
<?php
require_once 'User.php';
?>
มาสร้างวัตถุสามชิ้นจากคลาสของเรา:
<?php
$user1 = new User('john', 21);
$user2 = new User('eric', 22);
$user3 = new User('kyle', 23);
?>
ทีนี้มาเขียนวัตถุที่เราสร้างขึ้น
ลงในอาร์เรย์ $users:
<?php
$user1 = new User('john', 21);
$user2 = new User('eric', 22);
$user3 = new User('kyle', 23);
$users[] = $user1;
$users[] = $user2;
$users[] = $user3;
var_dump($users);
?>
เราสามารถย่อโค้ดของเราได้ โดยกำจัดตัวแปรออก:
<?php
$users[] = new User('john', 21);
$users[] = new User('eric', 22);
$users[] = new User('kyle', 23);
var_dump($users);
?>
สามารถย่อโค้ดได้อีก โดยสร้างอาร์เรย์ของวัตถุขึ้นมาโดยตรง:
<?php
$users = [
new User('john', 21),
new User('eric', 22),
new User('kyle', 23)
];
var_dump($users);
?>
ทีนี้มาไล่ดูอาร์เรย์ของวัตถุของเรา ด้วยลูปและแสดงคุณสมบัติของวัตถุ บนหน้าจอ:
<?php
foreach ($users as $user) {
echo $user->name . ' ' . $user->age . '<br>';
}
?>
สร้างคลาส City โดยให้มี
คุณสมบัติต่อไปนี้: name, population
สร้างวัตถุของคลาส City จำนวน 5 ชิ้น
กรอกข้อมูลและเขียนลงในอาร์เรย์
ไล่ดูอาร์เรย์เมืองที่คุณสร้างขึ้น ด้วยลูปและแสดงชื่อเมืองและ ประชากรบนหน้าจอ