Propriétés protégées en POO en PHP

PHP prend également en charge les propriétés protégées. Elles sont également déclarées avec le modificateur protected. De telles propriétés sont héritées et accessibles dans les classes descendantes.

Créons une classe parent avec une propriété protégée contenant l'âge :

php<?php
  class User {
    protected $age;
    
    public function setAge($age) {
      $this->age = $age;
    }
    public function getAge() {
      return $this->age;
    }
  }
?>

Dans la classe descendante, créons une méthode augmentant l'âge d'une unité :

php<?php
  class Student extends User {
    public function incAge() {
      $this->age++;
    }
  }
?>
Задание 1

Réécrivez le code suivant en utilisant une propriété protégée :

php<?php
  class User {
    private $name;
    
    public function setName($name) {
      $this->name = $name;
    }
    public function getName() {
      return $this->name;
    }
  }
  
  class Employee extends User {
    public function setName($name) {
      if (strlen($name) > 0) {
        $this->name = $name;
      }
    }
  }
?>