Stocarea obiectelor în array-uri în OOP în PHP
Să presupunem că avem următoarea clasă User:
<?php
class User
{
public $name;
public $age;
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
Să conectăm fișierul cu clasa noastră la fișierul index.php:
<?php
require_once 'User.php';
?>
Să creăm trei obiecte ale clasei noastre:
<?php
$user1 = new User('john', 21);
$user2 = new User('eric', 22);
$user3 = new User('kyle', 23);
?>
Acum să înregistrăm obiectele create de noi
într-un array $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);
?>
Putem scurta codul nostru, scăpând de variabile:
<?php
$users[] = new User('john', 21);
$users[] = new User('eric', 22);
$users[] = new User('kyle', 23);
var_dump($users);
?>
Putem scurta codul și mai mult, făcând direct un array de obiecte:
<?php
$users = [
new User('john', 21),
new User('eric', 22),
new User('kyle', 23)
];
var_dump($users);
?>
Acum să parcurgem array-ul nostru de obiecte cu un ciclu și să afișăm proprietățile obiectelor pe ecran:
<?php
foreach ($users as $user) {
echo $user->name . ' ' . $user->age . '<br>';
}
?>
Creați o clasă City, în care vor fi
următoarele proprietăți: name, population.
Creați 5 obiecte ale clasei City,
completați-le cu date și înregistrați-le într-un array.
Parcurgeți array-ul de orașe creat de dvs. cu un ciclu și afișați orașele și populația lor pe ecran.