PHP マジック定数

PHPには、使用される場所に応じて値が変化する9つの事前定義された定数があります。これらは「マジック定数」と呼ばれます。

これらのマジック定数は、先頭と末尾にダブルアンダースコアが付いていますが、ClassName::class 定数を除きます。

マジック定数

定数 説明
__CLASS__ クラス内で使用される場合、クラス名が返されます。
__DIR__ ファイルのディレクトリが返されます。
__FILE__ フルパスを含むファイル名が返されます。
__FUNCTION__ 関数内で使用される場合、関数名が返されます。
__LINE__ 現在の行番号が返されます。
__METHOD__ クラスのメソッド内で使用される場合、クラス名と関数名が返されます。
__NAMESPACE__ 名前空間内で使用される場合、名前空間の名前が返されます。
__TRAIT__ トレイト内で使用される場合、トレイト名が返されます。
ClassName::class 指定されたクラスの名前と、あれば名前空間の名前が返されます。

Note

マジック定数は大文字小文字を区別しません。したがって、__LINE__ は __line__ と同じ結果を返します。