naslovna
programiranje
HTML
CSS
PHP
MySQL
jQuery
Osnove
Polja
Petlje
Funkcije
Forme

Doseg ili vidljivost varijable određuje na kojim će mjestima unutar skripte biti dostupna varijabla, odnosno vrijednost koju sadržava.

 

Varijable po njihovom dosegu moguće je podijeliti na tri vrste:

 

  • lokalne varijable
  • globalne varijable
  • predefinirane globalne varijable (superglobalne varijable).

 

 

Lokalne varijable

 

Lokalne varijable vidljive su samo unutar funkcije u kojoj se koriste.

U sljedećem primjeru varijabla $a u funkciji neće imati veze s varijablom $a koja se koristi u ostatku skripte.

 

function Ispisi()
{
    $a = 2;
    echo $a;
}
$a = 1;
Ispisi();

 

Pod lokalne varijable spadaju i argumenti funkcije, koji neće imati veze s eventualnim istoimenim varijablama u ostatku skripte.

 

 

Globalne varijable

 

Globalne varijable su varijable definirane izvan funkcija. One su vidljive unutar cijele datoteke (i svih uključenih datoteka), ali ne i unutar funkcija.


Ako se globalna varijabla želi koristiti unutar funkcije, potrebno ju je definirati kao globalnu varijablu pomoću ključne riječi global.

 

function Ispisi()
{
    global $a;
    echo $a;
}
$a = 1;
Ispisi();

 

 

 

Predefinirane globalne varijable, koje se nazivaju i superglobalnim varijablama, su polja dostupna na bilo kojem mjestu u svim skriptama.


U polju $GLOBALS, koje je dostupno u svim skriptama, nalazit će se globalne varijable definirane u trenutnoj skripti.

Pojedinom članu tog polja pristupa se preko znakovnog ključa – imena varijable.


Pomoću tog polja može se pristupiti globalnim varijablama i unutar funkcije:

 

function Ispisi()
{
    echo $GLOBALS["a"];
}
$a = 1;
Ispisi();

 

Osim polja $GLOBALS postoje i druge predefinirane globalne varijable.

Radi se poljima koja sadrže vrijednosti vezane za postavke poslužitelja, HTTP zahtjeva i slično. Ova polja također imaju znakovne ključeve preko kojih se pristupa pojedinoj vrijednosti.

 

 

U globalno dostupnom polju $_SERVER nalaze se vrijednosti vezane za web poslužitelja. Pomoću njega, u svakoj se skripti može pristupiti IP adresi poslužitelja i portu kojim se poslužitelj koristi:

 

echo $_SERVER["SERVER_ADDR"]; //127.0.0.1
echo "<br/>";
echo $_SERVER["SERVER_PORT"]; //80

 

 

U sljedećoj tablici dan je pregled predefiniranih globalno dostupnih polja:

 

Polje Opis
$GLOBALS vrijednosti globalnih varijabli iz trenutne skripte
$_SERVER vrijednosti postavljene od strane web posluţitelja
$_ENV vrijednosti iz okruženja u kojem je instaliran PHP
$_GET vrijednosti dostupne u URL-u trenutne stranice
$_POST vrijednosti prenešene u HTTP zahtjevu metodom POST
$_COOKIE vrijednosti zapisane u kolačićima (tekstualnim datotekama koje web preglednik sprema na korisnikovom računalu)
$_REQUEST vrijednosti iz polja $_GET, $_POST i $_COOKIE
$_FILES vrijednosti koje se odnose na datoteke poslane na poslužitelj