Lưu trữ đối tượng trong mảng trong OOP PHP

Giả sử chúng ta có lớp User như sau:

User.php<?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:

index.php<?php
  require_once 'User.php';
?>

Hãy tạo ba đối tượng của lớp chúng ta:

index.php<?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:

index.php<?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:

index.php<?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:

index.php<?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:

index.php<?php
  foreach ($users as $user) {
    echo $user->name . ' ' . $user->age . '<br>';
  }
?>
Задание 1

Tạo lớp City, trong đó có các thuộc tính sau: name, population.

Задание 2

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.

Задание 3

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.