ВНИМАНИЕ: Запись на курсы по HTML, CSS, JavaScript, PHP, Python, React, Vue, Laravel и другим фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
⊗ppOpAdOIC 19 of 107 menu
Вступайте в телеграмм-канал сайта code.mu: новинки, статьи, интервью, задачи, бесплатные курсы и тренинги. Жми для вступления:)

Объекты внутри классов в ООП в 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; } } ?>

Сделайте так, чтобы во второй и третий параметры передавались объекты отдельных классов.

Создайте объект с работником с помощью класса из предыдущей задачи.

Выведите в консоль имя, должность и отдел для созданного работника.

byenru