⊗ppOpBsPM 11 of 107 menu

Méthodes privées en POO en PHP

Non seulement les propriétés peuvent être privées, mais aussi les méthodes. Généralement, on rend privées les méthodes auxiliaires, afin qu'elles ne puissent pas être appelées accidentellement de l'extérieur de la classe.

Regardons un exemple. Supposons que nous ayons la classe suivante :

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

Créons dans cette classe une méthode privée, qui prendra une chaîne en paramètre et mettra en majuscule son premier caractère :

<?php class User { private $name; public function __construct($name) { $this->name = $name; } public function show() { return $this->name; } private function cape($str) { return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1); } } ?>

Utilisons notre méthode auxiliaire à l'intérieur d'une autre méthode :

<?php class User { private $name; public function __construct($name) { $this->name = $name; } public function show() { return $this->cape($this->name); } private function cape($str) { return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1); } } ?>

Vérifions. Créons un objet de notre classe :

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

Appelons la méthode publique, qui utilise la méthode auxiliaire :

<?php echo $user->show(); ?>

Dans le code suivant, rendez la méthode auxiliaire privée :

<?php class Employee { public function __construct($name, $salary) { $this->name = $name; $this->salary = $salary; } public function getSalary() { return $this->addSign($this->salary); } public function addSign($num) { return $num . ' ; } } ?>
Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser