PHP включает девять магических констант, значение которых изменяет контекст.
Например, значение константы __LINE__
зависит от строки скрипта,
на которой указали константу. Магические константы PHP разрешает
во время компиляции, в отличие от стандартных констант, которые PHP разрешает
во время выполнения. Специальные константы нечувствительны
к регистру, а их список приводит следующий параграф:
Имя | Описание |
---|---|
__LINE__ |
Текущий номер строки в файле. |
__FILE__ |
Полный путь и имя текущего файла с развёрнутыми символическими ссылками. Возвращается имя подключаемого файла, если константу указали внутри подключаемого файла. |
__DIR__ |
Возвращает директория подключаемого файла, если константу
указали внутри подключаемого файла.
Это эквивалентно вызову
dirname(__FILE__) . Возвращаемое имя директории
не оканчивается на слеш, за исключением корневой директории.
|
__FUNCTION__ |
Имя функции или {closure} для анонимной функции.
|
__CLASS__ |
Имя класса. Имя класса включает пространство имён, в котором объявили класс
(например, Foo\Bar ).
В методах трейтов константа __CLASS__ — имя класса, в котором вызывают метод трейта.
|
__TRAIT__ |
Имя трейта. Имя трейта включает пространство имён,
в котором объявили трейт (например, Foo\Bar ).
|
__METHOD__ |
Имя метода класса. |
__NAMESPACE__ |
Имя текущего пространства имён. |
ClassName::class |
Абсолютное имя класса. |