A PHP egy csomó előre definiált változót biztosít az összes futó scriptnek. Sok ilyen változót nem lehet rendesen dokumentálni, mert függnek a szervertől, amelyen futnak, függnek a verziótól és a konfigurálástól, és más gyéb tényezőktől. Néhány ilyen változó nem elérhető, ha a PHP parancssorból fut.
Ezen tényezők ellenére itt egy lista az előre definiált változókról, amit egy PHP3 tipikus installálásakor elérhetők Az Apache 1.3.6-ot használva.
Az összes előre definiált változót kilistázhatod, és sok más hasznos információt megtudhatsz a phpinfo() használatával.
Megjegyzés: Ez a lista nem teljes, nem is ez a célja. Ez egyszerűen csak egy útmutató, amiben benne van, hogy milyen típusú előre definiált változókat érhetsz el.
Ezek a változók az Apache webszerver változói. Ha másik szervert futtatsz, nincs rá garancia, hogy ugyanazokat a változókat elérheted; néhányuk hiányozhat, vagy esetleg itt nem szereplőket biztosíthat a szerver számodra. Számos változó dokumentált a for in the CGI 1.1 specifikációban, azokra bizton számíthatsz.
Vedd figyelembe, hogy ha a PHP-t parancssorból (command line) indítod, ezen változók töredékének lehet csak értelme, ha egyáltalán léteznek.
A server CGI specifikációjának verziója. Pl.: 'CGI/1.1'.
A server (host) neve, ami alatt a script fut. Ha a script virtuális hoston fut, a virtuális host neve.
Server azonosító string, ami a kérések válaszának fejlécében szerepel.
Az oldal lekéréséhez használt protokoll neve és verziója pl. 'HTTP/1.0'
Melyik kérési formát használt, aki az oldalt lekérte pl. 'GET', 'HEAD', 'POST', 'PUT'.
Az oldalt meghívó URL-ben a kérdőjel után szereplő rész, ha létezik.
A www dokumentumok főkönyvtára, ami alatt a jelenlegi script fut. Ez a szerver konfigurációs file-jában meghatározott érték.
Az Accept: HTTP fejléc tartalma, ha éppen van ilyen. Ebben adja meg a böngésző, hogy milyen formátumokat képes fogadni.
Az Accept-Charset: HTTP fejléc tartalma, ha éppen van ilyen. pl. 'iso-8859-1,*,utf-8'.
Az Accept-Encoding: HTTP fejléc értéke, ha éppen van ilyen. pl. 'gzip'.
Az Accept-Language: HTTP fejléc értéke, ha éppen van ilyen. pl. 'en'.
A Connection: HTTP fejléc értéke, ha éppen van ilyen. pl. 'Keep-Alive'.
A Host: HTTP fejléc értéke, ha éppen van ilyen.
Annak az oldalnak az URL címe, ahonnan ide került a látogató. Ezt a látogató böngészője állítja be, de nem minden böngésző teszi ezt meg, és nem mindig.
A User_Agent: HTTP fejléc értéke, ha éppen van ilyen. Ez egy string, ami meghatározza az oldal megtekintéséhez használt böngészőt, pl. Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586). Sok más dolog mellett használhatod ezt az értéket a get_browser() fügvénnyel arra, hogy az aktuális böngésző képességeire szabd az oldal megjelenését.
Az az IP cím, ahonnan a látogható az oldalt lekérte.
A látogató gépén a webszerverrel való kommunikációhoz használt port száma.
A PHP script abszolút elérési útja a szerver gépen.
A SERVER_ADMIN szerver konfigurációs file direktíva értéke (Apache alatt). Ha a script egy virtuális host-on fut, akkor ez a virtuális host-hoz rendelt érték.
A webszerver gépen a szerver kommunikációjához használt port száma. Alapbeállításban ez '80', de például SSL-t használva ez a biztonságos HTTP portnak a száma lesz.
Egy string, ami a szerver vezióját és a virtuális host-ot tartalmazza, ha engedélyezett. Ez a szöveg jelenik meg minden szerver által generált oldal alján.
Hasonló értéket tartalmaz, mint a SCRIPT_NAME, de CGI verzió esetén ez jobb lehet az önhivatkozó kérdőívek készítésekor, mert egyes szervereken a SCRIPT_NAME tartalmazza a PHP meghívási utat is.
A script filerendszernek megfelelő (nem a document root-hoz viszonyított!) elérési útja. Ezt a szerver a virtuális->valós átalakítással határozza meg.
Az aktuális script elérési útja (ahogy az az URL-ekben megjelenik!). Hasznos a saját magukra mutató oldalakhoz [pl. form-ok esetén].
Az az URI, amivel ezt az oldalt lekérték. pl. '/index.html'.
Ezek a változók a PHP globális változói közé kerülnek abból a környezetből, ahol a PHP feldolgozó fut. Számos változót a shell szolgáltat, ami alatt a PHP fut, és mivel más-más rendszerek más-más shell-eket használnak, egy konkrét lista összeállítása lehetetlen. Légy szíves nézz utána az előre definiált környezeti változóknak a shell-ed dokumentációjában.
Más környezeti változók, beleértve a CGI változókat is, attól függően kerülnek be, hogy a PHP szerver modulként fut, vagy CGI feldolgozóként.
Ezeket a PHP maga állítja elő.
A scriptnek átadott argumentumok tömbje. Ha a script parancssor alól futtatjuk, ez egy C-szerű hozzáférést biztosít a parancssor argumentumokhoz. Ha GET metódussal hívjuk, az URL kérdőjel utáni részét (query string) tartalmazza.
A parancssori argumentumok számát tartalmazza (ha parancssorból futtatjuk).
A most futó scriptfile neve, a document root-hoz képest relatív alakban. Ha a PHP parancssorból fut, ez a változó nem elérhető.
Egy asszociatív tömb, ami a HTTP cookie-kat (sütiket) tartalmazza. Csak akkor elérhető, ha a változó-követést beállítjuk vagy a track_vars konfigurációs direktívával, vagy az Apache php_track_vars direktívájával.
Egy asszociatív tömb, ami a HTTP GET metódussal kapott adatokat tartalmazza. Csak akkor elérhető, ha a változó-követést beállítjuk vagy a track_vars konfigurációs direktívával, vagy az Apache php_track_vars direktívájával.
Egy asszociatív tömb, ami a HTTP POST metódussal kapott adatokat tartalmazza. Csak akkor elérhető, ha a változó-követést beállítjuk vagy a track_vars konfigurációs direktívával, vagy az Apache php_track_vars direktívájával.