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

Toute tentative d'accéder directement à notre propriété en dehors de la classe entraînera une erreur :

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

Et l'appel de notre méthode permettra de lire cette propriété :

php<?php
  echo $user->show(); // affichera 'john'
?>
Задание 1

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

Задание 2

Passez par le constructeur les valeurs de ces propriétés.

Задание 3

Créez une méthode qui affichera les données de l'employé.