V této lekci probereme konstanty PHP. Co je konstanta PHP? Jak vytvořit konstantu v PHP? Co dělají konstanty PHP? Jaká jsou pravidla vytváření konstantních PHP? Čtěte dál a dozvíte se to.

Konstanty jsou jednoduché nosiče dat používané k ukládání dat. Konstanty jsou jako proměnné. Jejich jediný rozdíl ve srovnání s proměnnými je tento: Data přiřazená k proměnným lze později změnit nebo odstranit (nedefinovaná nebo nulová); Data přiřazená ke konstantám však nelze později změnit ani odstranit.

K vytvoření konstanty používáme předdefinovanou funkci define() PHP nebo klíčové slovo const.

V příkladu níže definujeme konstanty pomocí funkce define() a klíčového slova const.

define( 'CAR_NAME', 'MERCEDES' );
// define() fonksiyonuyla CAR_NAME adında bir sabit tanımladık ve MERCEDES değerini verdik.
echo CAR_NAME;
// Çıktı: MERCEDES
const COMPANY_NAME = 'Onur Özden Web Çözümleri';
// const anahtar kelimesiyle COMPANY_NAME adında bir sabit tanımladık ve Onur Özden Web Çözümleri değerini verdik.
echo COMPANY_NAME;
// Çıktı: Onur Özden Web Çözümleri

Pravidla konstantního vytváření PHP

  • Konstantní názvy mohou začínat pouze písmenem nebo _ (podtržítko).
  • (A-Z a-z 0-9) a _ (podtržítko) lze použít v názvech konstant.
  • V konstantních jménech nelze nikdy použít speciální znaky.
  • Při definování jmen konstant nelze použít vyhrazená slova používaná PHP (if, break, default, new atd.).
  • Hodnoty přiřazené konstantám nelze později změnit, odstranit nebo změnit jejich definici.

Doporučení a tipy pro neustálé vytváření PHP

  • Nedoporučuje se psát globální kód v konstantních názvech a kvůli čitelnosti používat turecké znaky.
  • Konstantu, kterou jsme vytvořili v globální oblasti, můžeme nazvat výrazem const v místní oblasti. Konstantu, kterou jsme vytvořili v lokální oblasti, však nemůžeme nazývat globální oblastí. Toto pravidlo neplatí pro konstanty, které vytváříme pomocí funkce define. Konstanty, které jsme vytvořili pomocí funkce define, můžeme volat z libovolného pole do libovolného pole.
  • Vytvořeno pomocí funkce define() a ve výchozím nastavení rozlišuje malá a velká písmena. Volitelně mohou konstanty vytvořené pomocí funkce define() nerozlišovat malá a velká písmena tím, že funkci přiřadíte jako třetí argument hodnotu false. Konstanty vytvořené pomocí klíčového slova const nerozlišují malá a velká písmena.
  • PHP v současné době podporuje jak konstanty rozlišující malá a velká písmena, tak i konstanty nerozlišující malá a velká písmena. Konstanty nerozlišující malá a velká písmena jsou nepraktické, podléhají různým nekonzistencím ve funkčnosti a vedou k nadměrné složitosti implementace. Z tohoto důvodu se nikdy nedoporučuje, aby se v konstantách nerozlišovala malá a velká písmena.

Příklady konstant PHP

V níže uvedeném příkladu pokryjeme zadání hodnoty konstantě v datovém typu číslo a přiřazení hodnoty jiné konstantě konstantě.

define('SOFTWARE_VERSION', 2.4);
// define() fonksiyonuyla SOFTWARE_VERSION adında bir sabit tanımladık ve 2.4 değerini verdik.
echo SOFTWARE_VERSION;
// Çıktı: 2.4
const VERSION = SOFTWARE_VERSION;
// const anahtar kelimesiyle VERSION adında bir sabit tanımladık ve SOFTWARE_VERSION sabitinin değerini verdik.
echo VERSION;
// Çıktı: 2.4

V níže uvedeném příkladu se budeme zabývat přiřazením dat typu pole ke konstantě.

define('SOFTWARE_VERSION', 2.4);
// define() fonksiyonuyla SOFTWARE_VERSION adında bir sabit tanımladık ve 2.4 değerini verdik.
echo SOFTWARE_VERSION;
// Çıktı: 2.4
const VERSION = SOFTWARE_VERSION;
// const anahtar kelimesiyle VERSION adında bir sabit tanımladık ve SOFTWARE_VERSION sabitinin değerini verdik.
echo VERSION;
// Çıktı: 2.4

V níže uvedeném příkladu budeme konstantu, kterou jsme vytvořili v globální oblasti, nazývat klíčovým slovem const v místní oblasti.

const GLOBAL_CONSTANT = 'CONSTANT VALUE';
// Global alanda const anahtar kelimesiyle GLOBAL_CONSTANT adlı bir sabit oluşuturduk ve sabite CONSTANT VALUE değerini verdik.
function simple_function(): string
{
    return GLOBAL_CONSTANT;
}

// simple_function adlı bir fonksiyon oluşuturduk ve sabiti döndürdük (return).
echo simple_function();
// Döndürdüğümüz sabiti yazdırdık
// Çıktı: CONSTANT VALUE

V níže uvedeném příkladu budeme konstantu, kterou jsme vytvořili v lokální oblasti, nazývat klíčovým slovem const v globální oblasti. Poznámka: Tento příklad vrací chybový výstup. Protože toto použití je nesprávné.

// Local alanda const anahtar kelimesiyle GLOBAL_CONSTANT adlı bir sabit oluşuturduk ve sabite CONSTANT VALUE değerini verdik.
function simple_function(): string {
	const GLOBAL_CONSTANT = 'CONSTANT VALUE';
	return GLOBAL_CONSTANT;
}
// simple_function adlı bir fonksiyon oluşuturduk ve sabiti döndürdük (return).
echo simple_function();
// Döndürdüğümüz sabiti yazdırdık
// Çıktı: Parse error: syntax error, unexpected 'const'  (T_CONST)
// Bu hata çıktısını almamızın nedeni local alanda const anahtar kelimesiyle sabit oluşturamamızdır. Const anahtar kelimesiyle bir sabiti sadece top-level veya global dediğimiz tüm scriptte geçerli olan alanlarda oluşturabiliriz.