PHP: Константы
Разработчики часто работают с данными, которые никогда не меняются. Например, число π, которое всегда равно 3.14
и не может измениться.
Для обращения к подобным данным в PHP принято использовать константы:
<?php
const PI = 3.14;
print_r(PI); // => 3.14
Создание константы отличается от создания переменной. Оно начинается с ключевого слова const
и последующего имени константы. При этом знак доллара не нужен. Далее ей присваивается нужное значение.
Константы принято именовать буквами в верхнем регистре с _
в качестве разделителя. Константа тоже может использоваться в любом выражении. Единственное ограничение — константу нельзя изменить.
В PHP много встроенных констант, которые можно использовать в любом месте программы. Вот некоторые из них:
PHP_VERSION
— текущая версия PHPPHP_MAXPATHLEN
— максимальная разрешенная длина имени файлаPHP_INT_MAX
— максимальное возможное значение целых чисел (integer)
Кроме обычных констант в PHP существует отдельная группа — магические константы. Их отличия заключаются в следующем:
- Магические константы невозможно определить самому, можно пользоваться только существующими
- Магические константы начинаются и заканчиваются символами
__
(два подчеркивания) - Магия заключается в том, что такие константы имеют одно и то же значение только в пределах определенной части программы
Последний пункт говорит о том, что существуют не очень постоянные константы, но их изменения регламентированы и на практике не вызывают проблем. К подобным константам относятся:
__LINE__
— содержит текущую строку файла, в котором она используется__FILE__
— путь до текущего файла__DIR__
— путь до директории, в которой находится текущий файл
Задание
Создайте константу DRAGONS_BORN_COUNT
и запишите в неё число 3 — это количество драконов, родившихся у Дайенерис.
Упражнение не проходит проверку — что делать? 😶
Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:
- Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.
В моей среде код работает, а здесь нет 🤨
Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.
Мой код отличается от решения учителя 🤔
Это нормально 🙆, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.
В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.
Прочитал урок — ничего не понятно 🙄
Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.
Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.
Полезное
Определения
Константа — способ сохранить информацию и дать ей имя для последующего использования в коде; константы нельзя изменять, в отличие от переменных.