Propriétés privées en POO en PHP
Les propriétés d'un objet qui peuvent être lues et écrites de l'extérieur sont appelées publiques. Il existe également des propriétés privées, qui ne seront accessibles qu'à l'intérieur de la classe.
Les noms des propriétés privées doivent être
déclarés avec le modificateur d'accès private.
Faisons cela :
<?php
class User {
private $name;
}
?>
Maintenant, enregistrons des données dans notre propriété. Cela peut être fait, par exemple, dans le constructeur de la classe :
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Créons maintenant une méthode qui retournera la valeur de notre propriété :
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Créons un objet de la classe, en passant le nom de l'utilisateur en paramètre :
<?php
$user = new User('john');
?>
Toute tentative d'accéder directement à notre propriété en dehors de la classe entraînera une erreur :
<?php
echo $user->name; // erreur
?>
Et l'appel de notre méthode permettra de lire cette propriété :
<?php
echo $user->show(); // affichera 'john'
?>
Dans la classe Employee, créez
trois propriétés privées : le nom, le salaire
et l'âge.
Passez par le constructeur les valeurs de ces propriétés.
Créez une méthode qui affichera les données de l'employé.