Аб'екты ўнутры класаў у ААП у PHP

У класах можна выкарыстоўваць аб'екты іншых класаў. Давайце паглядзім на прыкладзе. Хай мы хочам зрабіць карыстальніка з імем і прозвішчам, а таксама горадам, у якім ён жыве. Хай у нас ёсць наступны клас для горада:

php<?php
  class City {
    public $name;
    
    public function __construct($name) {
      $this->name = $name;
    }
  }
?>

Будзем імя, прозвішча і горад перадаваць параметрамі канструктара:

php<?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<?php
  $city = new City('luis');
  $user = new User('john', 'smit', $city);
?>

Давайце вывядзем імя нашага карыстальніка:

php<?php
  echo $user->name;
?>

А цяпер вывядзем назву горада для нашага карыстальніка:

php<?php
  echo $user->city->name;
?>
Задание 1

Дадзены наступны клас:

php<?php
  class Employee {
    public $name;
    public $position;
    public $department;
  
    public function __construct($name, $position, $department) {
      $this->name = $name;
      $this->position = $position;
      $this->department = $department;
    }
  }
?>

Зрабіце так, каб у другі і трэці параметры перадаваліся аб'екты асобных класаў.

Задание 2

Стварыце аб'ект з работнікам з дапамогай класа з папярэдняй задачы.

Задание 3

Вывядзіце ў кансоль імя, пасаду і аддзел для створанага работніка.