PHP da OOP da obyektlarni massivlarda saqlash
Faraz qilaylik, bizda User klassi mavjud:
<?php
class User
{
public $name;
public $age;
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
Klass faylimizni index.php fayliga ulaymiz:
<?php
require_once 'User.php';
?>
Klassimizning uchta obyektini yaratamiz:
<?php
$user1 = new User('john', 21);
$user2 = new User('eric', 22);
$user3 = new User('kyle', 23);
?>
Endi yaratgan obyektlarimizni
$users massiviga yozamiz:
<?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);
?>
O'zgaruvchilardan foydalanmasdan, kodimizni qisqartirishimiz mumkin:
<?php
$users[] = new User('john', 21);
$users[] = new User('eric', 22);
$users[] = new User('kyle', 23);
var_dump($users);
?>
Kodni yana ham qisqartirish mumkin, darhol obyektlar massivini yaratish orqali:
<?php
$users = [
new User('john', 21),
new User('eric', 22),
new User('kyle', 23)
];
var_dump($users);
?>
Endi obyektlar massivimizni tsikl bilan aylantiramiz va obyektlarning xususiyatlarini ekranga chiqaramiz:
<?php
foreach ($users as $user) {
echo $user->name . ' ' . $user->age . '<br>';
}
?>
City klassini yarating, unda quyidagi
xususiyatlar bo'lsin: name, population.
City klassining 5 ta obyektini yarating,
ularni ma'lumotlar bilan to'ldiring va massivga yozing.
Yaratgan shaharlar massivingizni tsikl bilan aylantiring va shaharlar ularning aholisi bilan birga ekranga chiqaring.