PHP - Волшебные константы
Войти

PHP - Волшебные константы

PHP - Волшебные константы

PHP предоставляет большой список предопределенных констант для каждого выполняемого скрипта. Многие из этих констант определяются различными модулями и будут присутствовать только в том случае, если эти модули доступны в результате динамической загрузки или в результате статической сборки.

Есть девять магических констант, которые меняют свое значение в зависимости от контекста, в котором они используются. Например, значение __LINE__ зависит от строки в скрипте, на которой эта константа указана. Все магические константы разрешаются во время компиляции, в отличие от обычных констант, которые разрешаются во время исполнения. Специальные константы нечувствительны к регистру и их список приведен ниже:

Некоторые магические константы PHP

__LINE__ - текущий номер строки в файле.
__FILE__ - полный путь и имя текущего файла с развернутыми симлинками. Если используется внутри подключаемого файла, то возвращается имя данного файла.
__DIR__ - директория файла. Если используется внутри подключаемого файла, то возвращается директория этого файла. Это эквивалентно вызову dirname(__FILE__). Возвращаемое имя директории не оканчивается на слеш, за исключением корневой директории.
__FUNCTION__ - имя функции.
__CLASS__ - имя класса. Это имя содержит название пространства имен, в котором класс был объявлен (например, FooBar). Обратите внимание, что начиная с PHP 5.4 __CLASS__ также работает в трейтах. При использовании в методах трейтов __CLASS__ является именем класса, в котором эти методы используется. __TRAIT__ - имя трейта. Это имя содержит название пространства имен, в котором трейт был объявлен (например, FooBar).
__METHOD__ - имя метода класса.
__NAMESPACE__ - имя текущего пространства имен.
ClassName::class - полное имя класса (с указанием пространства имен). См. также ::class.

Ссылки по теме:

  1. php.net
Теги:
php