get_called_class

"遅延静的束縛" のクラス名

説明

string get_called_class()

staticメソッドのコール元のクラス名を取得します。

パラメータ

この関数にはパラメータはありません。

戻り値

クラス名を返します。

エラー / 例外

get_called_class がクラスの外部からコールされた場合、 Error がスローされます。PHP 8.0.0 より前のバージョンでは、 E_WARNING が発生していました。

変更履歴

バージョン 説明
8.0.0 この関数をクラスの外部からコールした場合に、 Error がスローされるようになりました。 これより前のバージョンでは、E_WARNING が発生し、false を返していました。

例1 get_called_class の使用法

<?php

class foo {
    static public function 
test() {
        
var_dump(get_called_class());
    }
}

class 
bar extends foo {
}

foo::test();
bar::test();

?>

上の例の出力は以下となります。

string(3) "foo"
string(3) "bar"

参考

  • get_parent_class
  • get_class
  • is_subclass_of