Константите, подобно на променливите, представляват конструкции на езика в които може да се съхраняват стойности от различни типове. Основната разлика межу константи и променливи е, че, както подсказва самото им название, константите не могат да бъдат променяни след като веднъж са били дефинирани и им е била присвоена някаква стойност. Тази стойност не може да бъде нито увеличавана, нито намалявана, нито заменяна, нито анулирана.

Константите се дефинират и им се присвоява стойност чрез функцията define(). Синтаксиса на функцията е следния:

define(име на константа, стойност на константа)

Т.е. в кръглите скоби на функцията се записват последователно името на константата и нейната стойност, отделени със запетая.

Пред имената на константите не се поставя символ за долар или някакъв друг символ.

Имената на константите могат да бъдат каквито пожелаете, т.е. името го избирате вие. При избор на името трябва да спазвате същите правила както при избор на име на променлива – названието на константа може да съдържа латински букви, арабски цифри и символа долно тире (_), като може да започва с буква или с тире, но не и с цифра.

По подразбиране има значение дали названията на константите са изписани с големи или малки букви, т.е. konstanta, Konastanta и KONSTANTA са три различни имена на константи. Това положение може да бъде променено с използване на ключовата дума true, както е обяснено в примерите по-долу.

Не е задължително, но е прието имената на константите да се пишат с главни букви.

Стойностите на константите могат да бъдат само от следните типове:
– целочислени стойности
– стойности с плаваща запетая
– булеви стойности (вярно / невярно)
– низове (поредици от символи)

Друга разлика между константите и променливите е, че константите по подразбиране имат глобален обхват на действие, т.е. те са достъпни на всяко място без да е необходимо да бъдат декларирани като глобални чрез ключовата дума global.

Пример за дефиниране на константа:

<?php

define(KONST1, „Така се дефинират константи“);

echo KONST1;

?>

Горния код ще изведе съобщението „Така се дефинират константи“, тъй като това е стойността, която сме задали на константата KONST1. Понеже става дума за стойност от тип string (низ), тя е затворена в кавички.

Както беше споменато по-горе, по подразбиране има значение дали названието на константата е с малки или големи букви. Например ако напишем кода

<?php

define(KONST1, „Така се дефинират константи“);

echo konst1;

?>

върнатия резултат ще бъде konst1.

Има начин названията на константите да станат нечувствителни към употребата на малки и големи букви. За целта е необходимо след стойността на константата да добавим ключовата дума true. В такъв случай кода

<?php

define(KONST1, „Така се дефинират константи“, true);

echo konst1;

?>

ще ни върне като резултат съобщението „Така се дефинират константи“, тъй като вече няма значение дали името на константата се изписва с малки или с големи букви.