マジック定数は__CONSTANTNAME__
形式で区別されます。
現在、使用されている場所によって8つの魔法の定数が変わります。たとえば、 __LINE__
の値は、スクリプトで使用されている行によって異なります。
これらの特殊定数は大文字と小文字を区別しません。次のようになります。
名 | 説明 |
---|---|
__LINE__ | ファイルの現在の行番号。 |
__FILE__ | シンボリックリンクを含むファイルの絶対パスとファイル名が解決されました。インクルードの内部で使用された場合、インクルードされたファイルの名前が返されます。 |
__DIR__ | ファイルのディレクトリ。 includeの中で使用された場合、インクルードされたファイルのディレクトリが返されます。これはdirname(__FILE__) と同じです。このディレクトリ名には、ルートディレクトリ以外のスラッシュが付きません。 |
__FUNCTION__ | 現在の関数名 |
__CLASS__ | クラス名。クラス名には、宣言された名前空間が含まれます(例: Foo\Bar )。形質メソッドで使用される場合、 __CLASS__ は、形質が使用されるクラスの名前です。 |
__TRAIT__ | 形質の名前。特性名には、それが宣言された名前空間が含まれます(例: Foo\Bar )。 |
__METHOD__ | クラスメソッド名。 |
__NAMESPACE__ | 現在の名前空間の名前。 |
これらの定数の最も一般的な使用例は、デバッグとロギングです