⊗ppOpBsPM 11 of 107 menu

Privata metoder i OOP i PHP

Privata kan inte bara vara egenskaper, utan även metoder. Vanligtvis görs hjälpmetoder privata så att de inte av misstag kan anropas utifrån klassen.

Låt oss titta på ett exempel. Anta att vi har följande klass:

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

Låt oss skapa en privat metod i denna klass, som tar en sträng som parameter och gör dess första tecken till versal:

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

Låt oss använda vår hjälpmetod inuti en annan metod:

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

Låt oss testa. Skapa ett objekt av vår klass:

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

Anropa den publika metoden som använder hjälpmetoden:

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

Gör hjälpmetoden privat i följande kod:

<?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 . ' ; } } ?>
Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa