PHP kézikönyv
Előző
8.
Fejezet.
Változók
Következő
A PHP egy számos előre definiált változót biztosít az bármely futó szkript számára.
Sokat ezek közül nem lehet teljes pontossságal dokumentálni, mert függnek a a futtató szervertől, a használt verziótól, 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.
E tényezők ellenére az alábbi listában azok az előre definiált változók vannak felsorolva, amelyek a PHP 3 tipikus installálásakor elérhetők az Apache 1.3.6-ot használva.
Az összes előre definiált változó kilistázható, és sok más hasznos információt is közöl a phpinfo().
Megjegyzés:
Ez a lista nem teljes, nem is ez a célja.
Ez csak egy útmutató arról, hogy milyen típusú előre definiált változók lehetnek.
Ezek a változók az Apache webszerver változói.
Ha másik szerveren fut a PHP, nincs rá garancia, hogy ugyanezek a változók akkor is rendelkezésre állnak: némelyik hiányozhat, esetleg itt nem szereplőket is biztosíthat a szerver.
Számos a CGI 1.1 specifikációban dokumentált változókra biztosan lehet alapozni.
Figyelni kell arra, hogy ha a PHP parancssorból (command line) használva a változók töredékének van csak értelme, ha egyáltalán definiáltak ilyen esetben.
A server CGI specifikációjának verziója.
Pl.: 'CGI / 1.1'.
A gazdagép (host) neve, ami alatt a szkript fut.
Ha a szkript virtuális host-on fut, a virtuális host neve.
Serverazonosító sztring, amely a kérésekre (request) adott válasz (response) fejlécében (header) szerepel.
Az oldal lekéréséhez használt protokoll neve és verziója pl. 'HTTP / 1.0'
Az oldal eléréséhez használt kérési forma, pl.: 'GET', 'HEAD', 'POST', 'PUT'.
Keresési kérdés, az oldalt meghívó URL-ben a? után szereplő rész, ha létezik.
A www dokumentumok főkönyvtára, amely alatt a jelenlegi szkript fut.
Ez a szerver konfigurációs fájljában meghatározott érték.
Az aktuális kérés Accept:
HTTP fejlécének tartalma, ha van ilyen.
Ebben adja meg a böngésző, hogy milyen formátumokat képes fogadni.
Az aktuális kérés Accept-Charset:
HTTP fejlécének tartalma, ha van ilyen. pl. 'iso-8859-1,*,utf-8'.
Az aktuális kérés Accept-Encoding:
HTTP fejlécének tartalma, ha van ilyen. pl. 'gzip'.
Az aktuális kérés Accept-Language:
HTTP fejlécének tartalma, ha van ilyen. pl. 'en'.
Az aktuális kérés Connection:
HTTP fejlécének tartalma, ha van ilyen. pl. 'Keep-Alive'.
Az aktuális kérés Host:
HTTP fejlécének tartalma, 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őprogramja állítja be, de ezt nem minden böngésző és nem mindig teszi meg.
Az aktuális User_Agent:
HTTP fejlécének tartalma, ha van ilyen.
Ez a string, amely 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 mellett ezt az értéket a fel lehet használni arra, hogy a get_browser() fügvénnyel az aktuális böngésző képességeinek megfelelően lehessen kialakítani az oldal megjelenését.
Az az IP cím, ahonnan a látogató az oldalt lekérte.
A látogató gépén a webszerverrel való kommunikációhoz használt port száma.
A PHP szkript abszolút elérési útja a szerver gépen.
A SERVER_ADMIN a kiszolgáló konfigurációs fájl direktíva értéke (Apache alatt).
Ha a szkript egy virtuális host-on fut, akkor ez a virtuális host-hoz rendelt érték.
A kiszolgálógépen a kiszolgáló kommunikációjában használt port száma.
Alapértelmezés szerint ez a '80', de például SSL-t használva ez a biztonságos HTTP portnak a száma lesz.
A kiszolgáló verziószámát és a virtuális host-ot tartalmazó sztring, 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 bináris meghívási útvonalát is.
A szkript a fájlrendszer szerinti (nem a document root-hoz viszonyított!) elérési útja.
Ezt a kiszolgáló a virtuális - valós átalakítás után határozza meg.
Az aktuális szkript elérési útja, ahogy az az URL-ben megjelenik.
Hasznos a saját magukra mutató oldalakhoz.
Az az URI, amellyel az oldalt lekérték. pl. '/ index.html'.
A PHP globális változói közé kerülnek a PHP feldolgozót futtató környezet változói.
Számos változót a shell szolgáltat, ami alatt a PHP fut.
Mivel más-más rendszerek más-más shell-eket használnak, ezért egy pontos lista összeállítása lehetetlen.
A használt shell dokumentációjában nézz utána az előre definiált környezeti változóknak!
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 $HTTP_*_VARS változók csak akkor állnak rendelkezésre, ha a track_vars be van kapcsolva.
Ha engedélyezted ezt a beállítást, ezek a változók mindig létrejönnek, még ha üresek is.
Ez nem engedi a rosszindulatú felhasználóknak, hogy meghamasítsák a változókat.
Megjegyzés:
A PHP 4.0.3 verziótól kezdve a track_vars mindig be van kapcsolva, függetlenül a konfigurációs fájl beállításától.
Megjegyzés:
Az új szuper globális (Superglobals) változók 4.1.0 verziótól használhatók.
További részletekért lásd a 4.1.0 verzió bejelentését Ezek a $_GET, $_POST, $_ENV, $_SERVER, $_COOKIE, $_REQUEST $_FILES és a $_SESSION tömbök, amelyek fesztelen megfogalmazásban szuper globális jelzővel illetik, mivel minden esetben használhatók tekintet nélkül az aktuális érvényességi körre.
Emiatt a régi, nekik megfelelő $HTTP_*_VARS tömbök használata már nem javasolt.
Ha a register_globals be van kapcsolva, ezek a változók globális változókként is létrejönnek, függetlenül a $HTTP_*_VARS tömböktől.
Nézd meg idevonatkozó részletes információkért a biztonságról szóló Globálisan is elérhető változók (Register Globals) használata c. fejezetet!
A szkriptnek átadott argumentumok tömbje.
Ha a szkript 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ó szkriptfájl neve, a document root-hoz képest relatív alakban.
Ha a PHP parancssorból fut, ez a változó nem elérhető.
Ez a változó a kérés útvonal információját is tartalmazza, ha az létezik, azaz a $PHP_SELF a "http: / /example.com / test.php / foo.bar" címre a következőt fogja adni: "/ test.php / foo.bar"
HTTP cookie-kat (sütiket) tartalmazó asszociatív tömb.
HTTP cookie-kat (sütiket) tartalmazó asszociatív tömb, amely minden hatókörben elérhető.
PHP 4.1.0-ban került a nyelvbe.
HTTP GET metódussal által szolgáltatott adatokat tartalmazó asszociatív tömb.
HTTP GET metódussal által szolgáltatott adatokat tartalmazó asszociatív tömb, amely minden hatókörben elérhető.
PHP 4.1.0-ban került a nyelvbe.
HTTP POST metódussal által szolgáltatott adatokat tartalmazó asszociatív tömb.
HTTP POST metódussal által szolgáltatott adatokat tartalmazó asszociatív tömb, amely minden hatókörben elérhető.
PHP 4.1.0-ban került a nyelvbe.
A HTTP POST metódussal feltöltött fájlokról tartalmaz információkat, asszociatív tömb.
Lásd a POST metódusú feltöltések című részt további információkért a $HTTP_POST_FILES tartalmát és szerkezetét illetően.
PHP 4.0.0-ban került a nyelvbe.
A HTTP POST metódussal feltöltött fájlokról tartalmaz információkat, asszociatív tömb.
Lásd a POST metódusú feltöltések című részt további információkért a $_POST Lásd a POST metódusú feltöltések című részt további információkért a $_POST tartalmát és szerkezetét illetően.
Minden hatókörben elérhető.
PHP 4.1.0-ban került a nyelvbe.
A szülő / futtató környezet aktuális változóit tartalmazó asszociatív tömb.
A szülő / futtató környezet aktuális változóit tartalmazó asszociatív tömb, amely minden hatókörben elérhető.
PHP 4.1.0-ban került a nyelvbe.
A HTTP szervertől érkező változókkal feltöltött asszociatív tömb.
Ezek a változók megfelelnek a fent említett Apache változóknak.
A HTTP szervertől érkező változókkal feltöltött asszociatív tömb, amely minden hatókörben elérhető.
PHP 4.1.0-ban került a nyelvbe.
Az aktuális szkripthez tartozó session változókat tartalmazó asszociatív tömb.
Az aktuális szkripthez tartozó session változókat tartalmazó asszociatív tömb, amely minden hatókörben elérhető.
A _SESSION tömbben új bejegyzések létrehozásával automatikusan regisztrálhatók értékek, mint a session_register() segítségével.
PHP 4.1.0-ban került a nyelvbe.
A GET, POST és Cookie változókból összeállított asszociatív tömb.
Más szóval, bármilyen a felhasználótól ügyféltől érkező adatot tartalmaz, ami biztonsági szempontból nem megbízható.
Minden hatókörben elérhető.
PHP 4.1.0-ban került a nyelvbe.
Előző
Tartalom
Következő
Változók
Fel
Változók hatásköre