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
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
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
$city = new City('luis');
$user = new User('john', 'smit', $city);
?>
Affichons le prénom de notre utilisateur :
<?php
echo $user->name;
?>
Maintenant, affichons le nom de la ville de notre utilisateur :
<?php
echo $user->city->name;
?>
Soit la classe suivante :
<?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.
Créez un objet employé à l'aide de la classe de la tâche précédente.
Affichez dans la console le prénom, le poste et le département de l'employé créé.