⊗ppOpBsPM 11 of 107 menu

Metode private în OOP în PHP

Nu doar proprietățile pot fi private, ci și metodele. De obicei, metodele private sunt făcute auxiliare, astfel încât să nu poată fi apelate accidental din exteriorul clasei.

Să vedem un exemplu. Să presupunem că avem următoarea clasă:

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

Să facem în această clasă o metodă privată, care va lua ca parametru un șir de caractere și va face majusculă prima literă a acestuia:

<?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); } } ?>

Să folosim metoda noastră auxiliară în interiorul altei metode:

<?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); } } ?>

Să testăm. Să creăm un obiect al clasei noastre:

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

Să apelăm metoda publică, care folosește metoda auxiliară:

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

În următorul cod, faceți metoda auxiliară privată:

<?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 . ' ; } } ?>
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge