Хранение объектов в массивах в ООП в 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.
Создайте 5 объектов класса City,
заполните их данными и запишите в массив.
Переберите созданный вами массив с городами циклом и выведите города и их население на экран.