Előre definiált változók

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.

Apache változók

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.

GATEWAY_INTERFACE

A server CGI specifikációjának verziója. Pl.: 'CGI/1.1'.

SERVER_NAME

A server (host) neve, ami alatt a script fut. Ha a script virtuális hoston fut, a virtuális host neve.

SERVER_SOFTWARE

Server azonosító string, ami a kérések válaszának fejlécében szerepel.

SERVER_PROTOCOL

Az oldal lekéréséhez használt protokoll neve és verziója pl. 'HTTP/1.0'

REQUEST_METHOD

Melyik kérési formát használt, aki az oldalt lekérte pl. 'GET', 'HEAD', 'POST', 'PUT'.

QUERY_STRING

Az oldalt meghívó URL-ben a kérdőjel után szereplő rész, ha létezik.

DOCUMENT_ROOT

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.

HTTP_ACCEPT

Az Accept: HTTP fejléc tartalma, ha éppen van ilyen. Ebben adja meg a böngésző, hogy milyen formátumokat képes fogadni.

HTTP_ACCEPT_CHARSET

Az Accept-Charset: HTTP fejléc tartalma, ha éppen van ilyen. pl. 'iso-8859-1,*,utf-8'.

HTTP_ENCODING

Az Accept-Encoding: HTTP fejléc értéke, ha éppen van ilyen. pl. 'gzip'.

HTTP_ACCEPT_LANGUAGE

Az Accept-Language: HTTP fejléc értéke, ha éppen van ilyen. pl. 'en'.

HTTP_CONNECTION

A Connection: HTTP fejléc értéke, ha éppen van ilyen. pl. 'Keep-Alive'.

HTTP_HOST

A Host: HTTP fejléc értéke, ha éppen van ilyen.

HTTP_REFERER

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.

HTTP_USER_AGENT

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.

REMOTE_ADDR

Az az IP cím, ahonnan a látogható az oldalt lekérte.

REMOTE_PORT

A látogató gépén a webszerverrel való kommunikációhoz használt port száma.

SCRIPT_FILENAME

A PHP script abszolút elérési útja a szerver gépen.

SERVER_ADMIN

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.

SERVER_PORT

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.

SERVER_SIGNATURE

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.

PATH_INFO

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.

PATH_TRANSLATED

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.

SCRIPT_NAME

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

REQUEST_URI

Az az URI, amivel ezt az oldalt lekérték. pl. '/index.html'.

Környezeti változók

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.

PHP változók

Ezeket a PHP maga állítja elő.

argv

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.

argc

A parancssori argumentumok számát tartalmazza (ha parancssorból futtatjuk).

PHP_SELF

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

HTTP_COOKIE_VARS

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.

HTTP_GET_VARS

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.

HTTP_POST_VARS

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.