Objets dans les classes en POO en PHP

Dans les classes, il est possible d'utiliser des objets d'autres classes. Observons cela avec un exemple. Supposons que nous souhaitons créer un utilisateur avec un nom et un prénom, ainsi que la ville où il habite. Imaginons que nous ayons la classe suivante pour la ville :

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

Nous allons passer le prénom, le nom et la ville en paramètres du constructeur :

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;
    }
  }
?>

Le prénom et le nom seront des chaînes de caractères, mais la ville sera un objet de sa propre classe :

php<?php
  $city = new City('luis');
  $user = new User('john', 'smit', $city);
?>

Affichons le prénom de notre utilisateur :

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

Maintenant, affichons le nom de la ville de notre utilisateur :

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

Soit la classe suivante :

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;
    }
  }
?>

Faites en sorte que les deuxième et troisième paramètres reçoivent des objets de classes distinctes.

Задание 2

Créez un objet employé à l'aide de la classe de la tâche précédente.

Задание 3

Affichez dans la console le prénom, le poste et le département de l'employé créé.