⊗ppOpStMIC 45 of 107 menu

Statiske metoder inde i klassen i OOP i PHP

Hvis du vil bruge statiske metoder inde i en klasse, skal du tilgå dem ikke gennem $this->, men ved hjælp af self::.

Lad os som eksempel tilføje til vores klasse Math metoden getDoubleSum, som vil finde den dobbelte sum af tal. Vi bruger inden i den nye metode den allerede eksisterende metode getSum:

<?php class Math { // Lad os finde den dobbelte sum: public static function getDoubleSum($a, $b) { return 2 * self::getSum($a, $b); // bruger en anden metode } public static function getSum($a, $b) { return $a + $b; } public static function getProduct($a, $b) { return $a * $b; } } ?>

Lad os bruge den nye metode:

<?php echo Math::getDoubleSum(1, 2); ?>

Omregn metoderne i følgende klasse til statiske:

<?php class ArraySumHelper { public function getSum1($arr) { return $this->getSum($arr, 1); } public function getSum2($arr) { return $this->getSum($arr, 2); } public function getSum3($arr) { return $this->getSum($arr, 3); } public function getSum4($arr) { return $this->getSum($arr, 4); } private function getSum($arr, $power) { $sum = 0; foreach ($arr as $elem) { $sum += pow($elem, $power); } return $sum; } } ?>
Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis