⊗ppOpStMIC 45 of 107 menu

PHPにおけるOOPのクラス内静的メソッド

クラス内で静的メソッドを使用したい場合、 $this->ではなく、 self::を使用してアクセスする必要があります。

例として、Mathクラスに 数値の合計の2倍を求めるメソッド getDoubleSumを追加してみましょう。 新しいメソッド内で既存のメソッド getSumを使用します:

<?php class Math { // 合計の2倍を求めます: public static function getDoubleSum($a, $b) { return 2 * self::getSum($a, $b); // 別のメソッドを使用 } public static function getSum($a, $b) { return $a + $b; } public static function getProduct($a, $b) { return $a * $b; } } ?>

新しいメソッドを使用してみましょう:

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

次のクラスのメソッドを 静的メソッドに変更してください:

<?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; } } ?>
日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否