⊗ppOpBsPG 12 of 107 menu

Les accesseurs (getters) de propriétés en POO en PHP

Supposons que nous ayons la classe suivante avec des propriétés privées :

<?php class User { private $name; private $surn; public function __construct($name, $surn) { $this->name = $name; $this->surn = $surn; } } ?>

Comme vous pouvez le voir, ces propriétés sont définies une fois lors de la création de l'objet. Cependant, actuellement, il est impossible de lire ces propriétés, car elles sont privées et il n'y a pas de méthodes correspondantes pour cela.

Créons pour nos propriétés des méthodes spéciales permettant de les lire. De telles méthodes (appelées accesseurs ou getters) commencent généralement par le mot get, suivi du nom de la propriété à lire.

Créons les accesseurs pour nos propriétés :

<?php class User { private $name; private $surn; public function __construct($name, $surn) { $this->name = $name; $this->surn = $surn; } public function getName() { return $this->name; } public function getSurn() { return $this->surn; } } ?>

Vérifions leur fonctionnement. Créeons un objet en passant les données de l'utilisateur en paramètre :

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

Lisons ces données en utilisant les accesseurs :

<?php var_dump($user->getName()); var_dump($user->getSurn()); ?>

Dans la classe Employee, créez trois propriétés privées : le nom, le salaire et l'âge.

Passez les valeurs de ces propriétés en paramètre du constructeur.

Créez des accesseurs affichant les valeurs de chacune de nos propriétés.

bydeenesfrptru