Константата е индентификатор (име) за проста стойност. Както подсказва и името, тази стойност не може да се променя по време на изпълнение на скрипта (с изключение на вълшебните константи, които всъщност не са константи). Константата е чувствителна към регистъра (case-sensitive) по подразбиране. Неписано правило е константните индентификатори да се пишат винаги с главни букви.
Имената на константите следват същите правила като другите етикети в PHP. Валидното име на константа започва с буква или подчертавка, последвана от произволен брой букви, цифри или подчертавки. Като регулярен израз, това би могло да бъде представено така: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
Вж. също Userland Naming Guide.
Example #1 Валидни и невалидни имена на константи
<?php
// Валидни имена на константи
define("FOO", "нещо");
define("FOO2", "нещо друго");
define("FOO_BAR", "нещо в повече");
// Невалидни имена на константи
define("2FOO", "нещо");
// Това е валидно, но трябва да се избягва:
// Възможно е някой ден PHP да предостави вълшебна константа,
// която ще счупи скрипта ви
define("__FOO__", "нещо");
?>
Забележка: В случая, под буква се разбират a-z, A-Z, и ASCII знаците от 127 до 255 (0x7f-0xff).
Както и за superglobals, константата има глобална област на действие. Можете да достъпвате константи където и да е във вашия скрипт без оглед на контекста. За повече информация относно обхват и контекст, прочетете раздел Област на действие на променливи.