Последнее обновление: 1.11.2015
Константы, как и переменные хранят определенное значение, только в отличие от переменных значение констант может быть установлено только один раз, и далее мы уже не можем его изменить. Например, определим числовую константу:
Для определения константы используется оператор define , который имеет следующую форму: define(string $name, string $value, bool $case_sen=false) . Параметр $name передает название константы, а параметр $value - ее значение. Третий необязательный параметр принимает логическое значение true или false . Если значение равно false, то при использовании константы будет учитываться ее регистр, если true - регистр не учитывается. В нашем случае третий параметр не использован, поэтому он по умолчанию равен false.
После определения константы мы можем ее использовать также, как и обычную переменную. Единственное исключение - мы не сможем изменить ее значение. Другое отличие от переменной - не надо использовать знак $ . То есть выражение NUMBER=33; работать не будет.
Предопределенные константы
Кроме создаваемых программистом констант в PHP имеется еще несколько встроенных констант:
FILE__ : хранит полный путь и имя текущего файла
LINE__ : хранит текущий номер строки, которую обрабатывает интерпретатор
DIR__ : хранит каталог текущего файла
FUNCTION__ : название обрабатываемой функции
CLASS__ : название текущего класса
METHOD__ : название обрабатываемого метода
NAMESPACE__ : название текущего пространства имен
Например, выведем текущую выполняемую строку и название файла:
Проверка существования константы
Чтобы проверить, определена ли константы, мы можем использовать функцию bool defined(string $name) . Если константа $name определена, то функция будет возвращать значение true
Константы - это значения, которые не изменяются со временем. Ещё из школы Вы, наверняка, знаете многие константы, например, число п , число e , ускорение свободного падения и другие. И, разумеется, при программировании тоже очень часто возникает необходимость ввода констант . И о том, как создавать и использовать константы в PHP , мы и поговорим в этой статье.
Давайте с Вами создадим константу числа п :
define(PI, 3.1415926);
echo PI;
?>
Оператор define создаёт константу PI и присваивает ей значение 3.1415926 . Дальше мы выводим эту константу через оператор echo . Всё очень просто, однако, есть одна рекомендация, которую я советую Вам всегда соблюдать. Обязательно пишите константы заглавными буквами. Не то, чтобы это было обязательно, но крайне желательно. И так принято не только в PHP , но и в других языках тоже.
Разумеется, впоследствии изменить константу PI будет нельзя (на то она и константа ).
Теперь разберём одну функцию, которая проверяет: "Определена ли заданная константа ". Давайте напишем такой скрипт:
if (!defined("PI")) define(PI, 3.1415926);
echo PI;
?>
Здесь проверяется существование константы PI . И если она не существует (то есть функция define() вернула false ), то тогда инициализируем эту константу. Затем просто выводим её.
Как видите, создавать и использовать свои константы в PHP - это очень просто.
И, напоследок, хочется рассказать об уже встроенных константах PHP . Давайте с Вами напишем простой скрипт:
phpinfo();
?>
Ближе к концу есть раздел "PHP Variable ". Собственно, это не совсем константы , однако, они являются константами при выполнении данного скрипта. Разумеется, при выполнении другого скрипта они уже будут иметь другие значения (не все, разумеется). Давайте с Вами выведем пару констант , чтобы Вы поняли, как с ними работать, ведь они используются безумно часто:
echo $_SERVER["REMOTE_ADDR"];
echo "
";
echo $_SERVER["QUERY_STRING"];
?>
В данном скрипте мы выводим IP-адрес пользователя , запустившего скрипт, а на следующей строке выводим строку запроса (например, "index.php?id=7 "). Забегая немного вперёд, говорю, что здесь мы работаем с глобальным массивом $_SERVER . С массивами мы ещё познакомимся, но, думаю, что те, кто работал с массивами в других языках программирования, без проблем узнают синтаксис. Что же касается других констант , то с ними работа происходит аналогично.
В этой заметке речь пойдет о константах. Как обычно разберемся с самим понятием константы в языках программирования и посмотрим, как объявляются и используются константы в PHP .
Понятие константа и константы в PHP
Слово константа должно быть вам уже знакомо из математики:
“Математическая константа - величина, значение которой не меняется.”
Тоже самое и в PHP. Константа в PHP – это идентификатор, который служит для обозначения простого значения (строка, число какое-нибудь), которое не может изменяться в процессе выполнения кода.
Для объявления константы (присвоения ей значения) используется функция define . Пример объявления константы:
Имена констант в PHP чувствительны к регистру (большие и маленькие буквы различаются), так что нужно быть внимательней. Также существует соглашение, что имена констант всегда пишутся в верхнем регистре.
Имя константы должно начинаться с буквы или символа подчеркивания “_” и может состоять из букв, цифр и подчеркивания.
Рассмотрим простой пример использования константы:
В этом примере мы объявили константу и использовали ее в программе.
Для чего используются константы и не проще ли использовать переменные?
Как уже было сказано, константы не могут изменить своего значения в процессе выполнения программы. В константах обычно сохраняют постоянные параметры сайта, такие как реквизиты доступа к базе данных (хост, логин и пароль пользователя, имя базы данных), расположение сайта на диске и многие другие настройки.
Если мы будем использовать переменные, то скрип может случайно (в случаем ошибки) изменить значение переменной и будет работать не так как вы задумали.
Использование констант гарантирует, что то значение которое вы указали при объявлении константы останется неизменным.
Инструкции