Objektumok tárolása tömbökben OOP-ban PHP-ben

Tegyük fel, hogy van egy User osztályunk:

User.php<?php
  class User
  {
    public $name;
    public $age;
    
    public function __construct($name, $age)
    {
      $this->name = $name;
      $this->age = $age;
    }
  }
?>

Kapcsoljuk össze az osztályt tartalmazó fájlt a index.php fájllal:

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

Hozzunk létre három objektumot az osztályunkból:

index.php<?php
  $user1 = new User('john', 21);
  $user2 = new User('eric', 22);
  $user3 = new User('kyle', 23);
?>

Most pedig írjuk be a létrehozott objektumainkat a $users tömbbe:

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);
?>

Leegyszerűsíthetjük a kódunkat a változók kiiktatásával:

index.php<?php
  $users[] = new User('john', 21);
  $users[] = new User('eric', 22);
  $users[] = new User('kyle', 23);
  
  var_dump($users);
?>

A kódot tovább lehet rövidíteni objektumok tömbjének azonnali létrehozásával:

index.php<?php
  $users = [
    new User('john', 21),
    new User('eric', 22),
    new User('kyle', 23)
  ];
  
  var_dump($users);
?>

Most pedig menjünk végig az objektumok tömbjén ciklussal és jelenítsük meg az objektumok tulajdonságait a képernyőn:

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

Készítsen egy City osztályt, amelyben a következő tulajdonságok lesznek: name, population.

Задание 2

Hozzon létre 5 objektumot a City osztályból, töltse fel őket adatokkal és írja be egy tömbbe.

Задание 3

Menjen végig a létrehozott városok tömbjén ciklussal és jelenítse meg a városokat és a népességüket a képernyőn.