Lưu trữ đối tượng trong mảng trong OOP PHP
Giả sử chúng ta có lớp User như sau:
<?php
class User
{
public $name;
public $age;
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
Hãy kết nối tệp chứa lớp của chúng ta với tệp index.php:
<?php
require_once 'User.php';
?>
Hãy tạo ba đối tượng của lớp chúng ta:
<?php
$user1 = new User('john', 21);
$user2 = new User('eric', 22);
$user3 = new User('kyle', 23);
?>
Bây giờ hãy ghi các đối tượng chúng ta đã tạo
vào mảng $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);
?>
Chúng ta có thể rút gọn mã của mình bằng cách loại bỏ các biến:
<?php
$users[] = new User('john', 21);
$users[] = new User('eric', 22);
$users[] = new User('kyle', 23);
var_dump($users);
?>
Có thể rút gọn mã hơn nữa, bằng cách tạo ngay một mảng các đối tượng:
<?php
$users = [
new User('john', 21),
new User('eric', 22),
new User('kyle', 23)
];
var_dump($users);
?>
Bây giờ hãy duyệt qua mảng các đối tượng của chúng ta bằng vòng lặp và in các thuộc tính của đối tượng ra màn hình:
<?php
foreach ($users as $user) {
echo $user->name . ' ' . $user->age . '<br>';
}
?>
Tạo lớp City, trong đó có
các thuộc tính sau: name, population.
Tạo 5 đối tượng của lớp City,
điền dữ liệu vào chúng và ghi vào một mảng.
Duyệt qua mảng các thành phố bạn đã tạo bằng vòng lặp và hiển thị tên thành phố cùng dân số của chúng ra màn hình.