⊗ppOpStMIC 45 of 107 menu

Staattiset metodit luokassa OOP:ssa PHP:ssä

Jos haluat käyttää staattisia metodeja luokan sisällä, niihin pitää viitata ei $this->:n kautta, vaan self:::n avulla.

Esimerkkinä lisätään luokkaamme Math metodi getDoubleSum, joka löytää lukujen kaksinkertaisen summan. Käytetään uuden metodin sisällä jo olemassa olevaa metodia getSum:

<?php class Math { // Etsitään kaksinkertainen summa: public static function getDoubleSum($a, $b) { return 2 * self::getSum($a, $b); // käytetään toista metodia } public static function getSum($a, $b) { return $a + $b; } public static function getProduct($a, $b) { return $a * $b; } } ?>

Hyödynnetään uutta metodia:

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

Muunna seuraavan luokan metodit staattisiksi:

<?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; } } ?>
Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää