静的メソッド

静的メソッドは、メソッドを定義するときに、staticキーワードを前に付けて定義する。

静的メソッドは、クラス名::メソッド名()で呼び出すことができる。静的メソッドの内部から、疑似変数$thisで呼び出すことはできない。

同じクラスの静的メソッドを呼び出すには、selfキーワードを使うこともできる。

子クラスから、親クラスの静的メソッドを呼び出すには、parentキーワードを使うこともできる。

書式

class クラス名 // クラスを定義
{
    static function メソッドA() { // 静的メソッドを定義
        // メソッド内処理文
    }
    static function メソッドB() { // 静的メソッドを定義
        クラス名::メソッドA(); // 「クラス名」の「メソッドA」の静的メソッドを呼び出す
    }
}
クラス名::メソッドA(); // 「クラス名」の「メソッドA」の静的メソッドを呼び出す

ポイント

静的メソッドの呼び出しは、クラス名、スコープ定義演算子::のあとに、メソッド名、丸括弧()を続ける。

丸括弧()内に、引数を設定することもできる。

クラス名::メソッド名();

サンプル

<?php
class taxClass5
{
    public static $varTax = 0.05;
    public static function func_tax( $var ) {
        return $var * ( 1 + taxClass5::$varTax );
    }
}
echo '税率' . taxClass5::$varTax * 100 . '%の場合: ';
echo taxClass5::func_tax( 100 ) . '円<br />';
?>

↓↓↓出力結果↓↓↓

税率5%の場合: 105円

スポンサード リンク

カテゴリー: PHP, オブジェクト指向プログラミング タグ: パーマリンク