⇧
vadnica-logo
Moje storitve O projektu Telegram O meni O meni

Osnove OOP: Razredne Konstante

V PHP-ju za definiranje konstant znotraj razredov uporabljamo ključno besedo const. Glavna značilnost konstant je, da se njihova vrednost po definiciji ne more več spremeniti. Za razliko od navadnih lastnosti, konstante pripadajo razredu samemu in ne posameznemu objektu, zato do njih dostopamo z operaterjem ::.

PRIMER
REZULTAT
Tu bo prikazan rezultat...

Pojasnilo primera: Od kod pride izpis?

Morda se sprašuješ: "Kako se lahko izpišeta Fuel ali Electricity, če pa v kodi sploh ni spremenljivk (tistih z znakom $)?" Odgovor se skriva v naravi konstant. Konstante niso spremenljivke, ampak fiksne vrednosti, ki so dobesedno "vpisane" v sam razred.

Glavne razlike v dostopu

Za lažjo predstavo si poglej spodnjo tabelo, ki prikazuje, kako se v kodi obnašajo različni tipi podatkov:

Tip podatka Sintaksa v razredu Način dostopa Primer izpisa
Spremenljivka public $barva; $objekt->barva Rdeča (samo ta avto)
Konstanta const NAPETOST = 230; Razred::NAPETOST 230 (za vse objekte)
Globalno define("PI", 3.14); PI 3.14 (povsod v kodi)

Uporaba znotraj razreda (self::)

Ko želiš dostopati do konstante znotraj lastne metode v istem razredu, ne uporabiš $this, ampak ključno besedo self. To je zato, ker $this kaže na objekt, self pa kaže na razred.

Dodatna orodja za delo s konstantami

PHP ponuja tudi vgrajene funkcije za ustvarjanje, preverjanje in dinamičen dostop do globalnih konstant:

Ime funkcije Opis Primer
define() Ustvari novo globalno konstanto. define("PI", 3.14);
defined() Preveri, ali konstanta z določenim imenom že obstaja. if(defined("PI")) { ... }
constant() Vrne vrednost konstante (uporabno, ko je ime konstante v spremenljivki). echo constant($ime_konstante);