PHP да ООП да класслар ичидаги объектлар
Классларда бошқа классларнинг объектларидан фойдаланиш мумкин. Келтирилган мисол орқали кўрайлик. Фароз қилайлик, биз исм ва фамилияси, шунгингдек яшайдиган шаҳри бор фойдаланувчи яратишни истаймиз. Фароз қилайлик, бизда шаҳр учун куйидаги класс мавжуд:
<?php
class City {
public $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Исм, фамилия ва шаҳрни конструктор параметрлари сифатида узетамиз:
<?php
class User {
public $name;
public $surn;
public $city;
public function __construct($name, $surn, $city) {
$this->name = $name;
$this->surn = $surn;
$this->city = $city;
}
}
?>
Бунда исм ва фамилия сатрлар бўлади, аммо шаҳр - ўзининг алаҳида классининг объекти бўлади:
<?php
$city = new City('luis');
$user = new User('john', 'smit', $city);
?>
Келтирилган фойдаланувчининг исмини чиқарайлик:
<?php
echo $user->name;
?>
Энди фойдаланувчи учун шаҳр номини чиқарайлик:
<?php
echo $user->city->name;
?>
Куйидаги класс берилган:
<?php
class Employee {
public $name;
public $position;
public $department;
public function __construct($name, $position, $department) {
$this->name = $name;
$this->position = $position;
$this->department = $department;
}
}
?>
Иккинчи ва учинчи параметрларга алоҳида классларнинг объектлари узетилишини таъминланг.
Олдинги масадаги класс ёрдамида ишчи объекти яратинг.
Яратилган ишчи учун исм, лавозим ва бўлимни консолга чиқаринг.