Méthodes protégées en POO en PHP
PHP prend en charge les méthodes protégées
à l'aide du modificateur protected.
De telles méthodes sont héritées, mais ne sont pas visibles
de l'extérieur de la classe.
Voyons comment cela fonctionne. Écrivons une classe parent avec une méthode protégée :
<?php
class User {
public function setName($name) {
$this->name = $name;
}
public function getName() {
return $this->capeFirst($this->name);
}
protected function capeFirst($str) {
return ucfirst($str);
}
}
?>
Utilisons cette méthode protégée dans une classe enfant :
<?php
class Student extends User {
public function setSurn($surn) {
$this->surn = $surn;
}
public function getSurn() {
return $this->capeFirst($this->surn);
}
}
?>
Dans le code suivant, rendez la méthode utilitaire protégée :
<?php
class User {
public function setName($name) {
if ($this->notEmpty($name)) {
$this->name = $name;
}
}
public function getName() {
return $this->name;
}
public function notEmpty($str) {
return strlen($str) > 0;
}
}
class Employee extends User {
public function setSurn($surn) {
if ($this->notEmpty($surn)) {
$this->surn = $surn;
}
}
public function getSurn() {
return $this->surn;
}
}
?>