Константа — это имя или идентификатор для простого значения. Постоянное значение не может измениться во время выполнения скрипта. По умолчанию константа чувствительна к регистру. По соглашению постоянные идентификаторы всегда в верхнем регистре. Имя константы начинается с буквы или подчеркивания, за которым следует любое количество букв, цифр или подчеркивания. Если вы определили константу, она никогда не может быть изменена или не определена.
Чтобы определить константу, вы должны использовать функцию define () и получить значение константы, вам нужно просто указать ее имя. В отличие от переменных, вам не нужно иметь константу с $. Вы также можете использовать функцию constant () для чтения значения константы, если вы хотите получить имя константы динамически.
постоянная () функция
Как видно из названия, эта функция будет возвращать значение константы.
Это полезно, когда вы хотите получить значение константы, но вы не знаете ее имени, т.е. она хранится в переменной или возвращается функцией.
константа () пример
<?php define("MINSIZE", 50); echo MINSIZE; echo constant("MINSIZE"); // same thing as the previous line ?>
Только скалярные данные (булево, целое число, число с плавающей запятой и строка) могут содержаться в константах.
Различия между константами и переменными
-
Нет необходимости писать знак доллара ($) перед константой, где, как и в переменной, нужно писать знак доллара.
-
Константы не могут быть определены простым присваиванием, они могут быть определены только с помощью функции define ().
-
Константы могут быть определены и доступны в любом месте без учета переменных правил области видимости.
-
После того, как константы установлены, они не могут быть переопределены или не определены.
Нет необходимости писать знак доллара ($) перед константой, где, как и в переменной, нужно писать знак доллара.
Константы не могут быть определены простым присваиванием, они могут быть определены только с помощью функции define ().
Константы могут быть определены и доступны в любом месте без учета переменных правил области видимости.
После того, как константы установлены, они не могут быть переопределены или не определены.
Допустимые и недействительные имена констант
// Valid constant names define("ONE", "first thing"); define("TWO2", "second thing"); define("THREE_3", "third thing"); // Invalid constant names define("2TWO", "second thing"); define("__THREE__", "third value");
Магические константы PHP
PHP предоставляет большое количество предопределенных констант для любого скрипта, который он запускает.
Есть пять магических констант, которые меняются в зависимости от того, где они используются. Например, значение __LINE__ зависит от строки, в которой оно используется в вашем скрипте. Эти специальные константы нечувствительны к регистру и имеют следующий вид:
Несколько «магических» констант PHP приведены ниже —
__ЛИНИЯ__
Текущий номер строки файла.
__ФАЙЛ__
Полный путь и имя файла файла. Если используется внутри включения, возвращается имя включенного файла. Начиная с PHP 4.0.2, __FILE__ всегда содержит абсолютный путь, тогда как в более старых версиях он содержал относительный путь при некоторых обстоятельствах.
__FUNCTION__
Название функции. (Добавлено в PHP 4.3.0) Начиная с PHP 5 эта константа возвращает имя функции в том виде, в котором она была объявлена (с учетом регистра). В PHP 4 его значение всегда в нижнем регистре.
__УЧЕБНЫЙ КЛАСС__
Название класса. (Добавлено в PHP 4.3.0) Начиная с PHP 5 эта константа возвращает имя класса в том виде, в котором оно было объявлено (с учетом регистра). В PHP 4 его значение всегда в нижнем регистре.
__METHOD__
Имя метода класса. (Добавлено в PHP 5.0.0) Имя метода возвращается в том виде, в котором оно было объявлено (с учетом регистра).