Spremenljivke uporabljamo za shranjevanje različnih vrednosti. V spremenljivko lahko shranimo številke, nize, znake, predmete, polja in logične znake. Ime spremenljivke je sestavljeno iz znaka $
in imena spremenljivke. Ime lahko vsebuje črke, številke in podčrtaj.
Izpis spremenljivk:
<?php
$hello = "Hello World!";
$a_number = 4;
$anotherNumber = 8;
echo $hello."<br />";
echo $a_number."<br />";
echo $anotherNumber;
?>
4
8
Dinamične spremenljivke
Spremenljivke definiramo tako, da pred njih dodamo znak dolar. Obstaja tudi način, da spremenljivko definiramo kot kazalec:
$uporabnik = "Simon";
je enako kot:
$vmesnik = "uporabnik";
$$vmesnik = "Simon";
V obeh primerih z ukazom echo $vmesnik
izpišemo Simon. $$vmesnik
lahko štejemo kot dolar, kateremu sledi vrednost spremenljivke $vmesnik
.
Sklicevanje na spremenljivke
Če želimo spremenljivko $Spremenljivka
prirediti drugi spremenljivki $NovaSpremenljivka
, to naredimo tako, da kopiramo vrednost iz prve v drugo spremenljivko. V primeru, da prvi spremenljivki spremenimo vrednost, bo vrednost v drugi spremenljivki ostala ista.
<?php
$Spremenljivka = 42;
//vrednost prve sprem. priredimo drugi
$NovaSpremenljivka = $Spremenljivka;
$Spremenljivka = 325;
echo $NovaSpremenljivka; //izpiše vrednost 42
?>
V verziji PHP-ja, ki je višja od 4, lahko določimo tudi sklicevanje ene spremenljivke na drugo.
<?php
$Spremenljivka = 42;
//pomnilniški naslov prve sprem. priredimo drugi
$NovaSpremenljivka = &$Spremenljivka;
$Spremenljivka = 325;
echo $NovaSpremenljivka; //izpiše vrednost 325
?>
Razlika med kodama je v tem, da smo dodali znak &
pred $Spremenljivka
. S tem določimo, da sta spremenljivki $Spremenljivka
in $NovaSpremenljivka
med sabo povezani, kar pomeni, da imata enako vrednost. S tem lahko prihranimo vrstico kopiranja, kar pri večjih projektih poveča hitrost procesiranja kode.
Tipi podatkov
Različni tipi podatkov zavzemajo različno količino pomnilnika in tudi skripte jih obravnavajo drugače. V primerjavi s PHP-jem nekateri programski jeziki zahtevajo, da vnaprej določimo, kakšne vrste podatek bo katera spremenljivka vsebovala. Po eni strani to pomeni, da je PHP zelo fleksibilen, po drugi pa lahko pride pri obsežnejših skriptah do zmešnjave. Določena spremenljivka lahko vsebuje popolnoma drug podatek, kot smo pričakovali.
Tip | Primer vrednosti | Opis |
---|---|---|
Integer | 5 | celo število |
Double | 3.213 | realno število |
String | "Pozdravljen!" | niz znakov |
Boolean | true | logična vrednost |
Object | predmeti | |
Array | polje |
Za testiranje tipov podatkov lahko uporabimo vgrajeno funkcijo gettype()
, ki vrne tip podatka glede na shranjeno vrednost:
$test = 5;
echo gettype($test); //vrne ineteger
Podoben primer lahko naredimo za druge podatkovne tipe. Vgrajena je tudi funkcija settype()
, ki spremeni tip podatka:
$nedolocena_vrednost = 3.14
settype($nedolocena_vrednost, integer)
echo $nedolocena_vrednost; //izpise 3
Pri spreminjanju v podatek tipa Integer
se vse številke za decimalno vejico odstranijo. Če spreminjamo podatek v tip Boolean
, pa se vse vrednosti, različne od nič, smatrajo kot true
. Le-ta je pri izpisu predstavljen z 1
, false
pa z 0
.
Konstante
Spremenljivke omogočajo fleksibilen način shranjevanja podatkov, saj lahko njihove vrednosti kadarkoli spremenimo. PHP omogoča tudi definiranje vrednosti, za katere ne želimo, da se spreminjajo. S pomočjo vgrajene funkcije define()
definiramo konstanto, ki je nato ne moremo več spreminjati. Kot konstanto lahko definiramo samo niz ali število.
<?php
define ("UPORABNIK", "Miha");
echo "Pozdravljen " . UPORABNIK;
?>
Preddefinirane spremenljivke:
$GLOBALS
- referenca na vse globalne spremenljivke$_SERVER
- strežniške spremenljivke$_GET
- vrednosti, poslane po HTTP metodi GET$_POST
- vrednosti, poslane po HTTP metodi POST$_COOKIE
- spremenljivke iz piškotkov$_FILES
- datoteke, poslane preko HTTP POST$_REQUEST
- skupno za spremenljivke, dobljene preko GET, POST in COOKIE