U ovoj lekciji ćemo razgovarati o PHP konstantama. Šta je PHP konstanta? Kako kreirati konstantu u PHP-u? Šta rade PHP konstante? Koja su pravila stvaranja PHP konstante? Čitajte dalje da saznate.

Konstante su jednostavni držači podataka koji se koriste za pohranjivanje podataka. Konstante su kao varijable. Njihova jedina razlika u poređenju sa varijablama je sledeća: Podaci dodeljeni varijablama mogu se kasnije promeniti ili ukloniti (učiniti nedefinisanim ili null); Međutim, podaci dodijeljeni konstantama ne mogu se kasnije promijeniti ili ukloniti.

Za kreiranje konstante koristimo PHP-ovu unaprijed definiranu funkciju define() ili ključnu riječ const.

U donjem primjeru definirat ćemo konstante sa funkcijom define() i ključnom riječi 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

Pravila za konstantno kreiranje PHP-a

  • Konstantna imena mogu početi samo sa slovom ili _ (podvlaka).
  • (A-Z a-z 0-9) i _ (podvlaka) mogu se koristiti u nazivima konstanti.
  • Posebni znakovi se nikada ne mogu koristiti u imenima konstanti.
  • Prilikom definiranja imena konstanti, rezervirane riječi koje koristi PHP (if, break, default, new, itd.) se ne mogu koristiti.
  • Vrijednosti dodijeljene konstantama ne mogu se kasnije promijeniti, ukloniti ili učiniti nedefiniranim.

Preporuke i savjeti za stalno kreiranje PHP-a

  • Ne preporučuje se pisanje globalnog koda u konstantnim imenima i korištenje turskih znakova radi čitljivosti.
  • Konstantu koju smo kreirali u globalnom području možemo nazvati izrazom const u lokalnom području. Međutim, konstantu koju smo stvorili u lokalnom području ne možemo nazvati globalnim. Ovo pravilo se ne primjenjuje na konstante koje kreiramo s funkcijom define. Konstante koje smo kreirali pomoću funkcije define možemo pozvati iz bilo kojeg polja u bilo koje polje.
  • Kreiran sa funkcijom define(), po defaultu je osjetljiv na velika i mala slova. Opciono, konstante kreirane funkcijom define() mogu biti neosjetljive na velika i mala slova dodjeljivanjem false kao trećeg argumenta funkciji. Konstante kreirane pomoću ključne riječi const ne razlikuju velika i mala slova.
  • PHP trenutno podržava konstante koje razlikuju velika i mala slova. Konstante koje ne razlikuju velika i mala slova su nepraktične, podložne različitim nedosljednostima u funkcionalnosti i rezultiraju prekomjernom složenošću implementacije. Iz tog razloga nikada se ne preporučuje pravljenje konstanti neosjetljivosti na velika i mala slova.

PHP Konstantni primjeri

U donjem primjeru ćemo pokriti davanje vrijednosti konstanti u tipu podataka broj i davanje vrijednosti druge konstante konstanti.

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

U donjem primjeru ćemo se baviti dodjeljivanjem podataka tipa niza konstanti.

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

U primjeru ispod, nazvat ćemo konstantu koju smo kreirali u globalnom području s ključnom riječi const u lokalnom području.

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

U primjeru ispod, nazvat ćemo konstantu koju smo kreirali u lokalnom području s ključnom riječi const u globalnom području. Napomena: Ovaj primjer vraća izlaz greške. Zato što je ova upotreba netačna.

// 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.