Objektumok tárolása tömbökben OOP-ban PHP-ben
Tegyük fel, hogy van egy User osztályunk:
<?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:
<?php
require_once 'User.php';
?>
Hozzunk létre három objektumot az osztályunkból:
<?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:
<?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:
<?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:
<?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:
<?php
foreach ($users as $user) {
echo $user->name . ' ' . $user->age . '<br>';
}
?>
Készítsen egy City osztályt, amelyben a következő
tulajdonságok lesznek: name, population.
Hozzon létre 5 objektumot a City osztályból,
töltse fel őket adatokkal és írja be egy tömbbe.
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.