27-06-2018 02:03

PHP define: описание имен констант

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

Описание констант

Константа описывается только один раз и только в конструкции PHP define. Константа фиксирует имя, а не значение. Требование неизменности значения константы осталось в далеком прошлом. Сегодня на первый план вышло обозначение параметра, а не его значение.

How dangerous is the new coronavirus?You will be interested:How dangerous is the new coronavirus?

Удобно именовать, например, папку корня сайта, операции записи, чтения или удаления удобочитаемыми именами и передавать в функции такие имена в качестве параметров. На самом деле передаются числа, не несущие никакого смысла.

С самого начала константы были сообщениями, математическими коэффициентами и целочисленными значениями. В настоящее время требования локализации языка клиента автоматически наложили вето на PHP define для констант в качестве сообщений об ошибках, элементах диалога и контента сайта. Нельзя фиксировать то, что в одной стране выглядит не так, как в другой.

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

Главное в использовании конструкции PHP define ('ИмяПараметра', 'Значение') - первый элемент. Можно еще указать регистрозависимость третьим параметром (True), но это малосущественно. Программирование, как классическая юриспруденция, стало отбирать из прошлого опыта только самое существенное.

Особенности констант

После конструкции PHP define ('PMA_ENGINE_DETAILS_TYPE_PLAINTEXT', 0) можно использовать осмысленное имя PMA_ENGINE_DETAILS_TYPE_PLAINTEXT, а не бессмысленный '0'. Но передавать в качестве параметра проще, удобнее и правильнее именно простое число.

Константа не предваряется символом $, используется осмысленно и делает код скрипта читабельным и комфортным. Сложился стиль писать константы только заглавными буквами, разделяя слова символом подчеркивания. Однако этот раритет от С/С++ все чаще уходит на второй план.

Define на PHP - это константа. Она должна быть осмысленной, лаконичной и максимально компактной - это главное. Константа - это статика, а значит, можно один раз продумать, как ее использовать, затем применять эффективно.



Источник