AWWW-1st3.6-w06.tresc-1.1-Slajd34

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Predefiniowane zmienne PHP

Predefiniowane zmienne PHP


PHP każdemu działającemu skryptowi udostępnia wiele zmiennych pochodzących z zewnątrz, czyli np. ze środowiska serwera, z formularzy HTML itp. Zmienne te są zorganizowane w tablice o nazwach rozpoczynających się od „$_”. Tablice te są „superglobalne” tzn. automatycznie dostępne w każdym zasięgu. Jest to istotne, gdyż zwykłe zmienne globalne w PHP nie są automatycznie widoczne w funkcjach i muszą być w nich zadeklarowane słowem kluczowym „global”.

Superglobalne tablice PHP to:

$GLOBALS – referencje do zmiennych globalnych skryptu (nazwa wyjątkowo bez „_”),

$_SERVER – zmienne tworzone przez serwer,

$_GET – zmienne dostarczone do skryptu metodą GET protokołu HTTP,

$_POST – zmienne dostarczone do skryptu metodą POST protokołu HTTP,

$_COOKIE – zmienne cookies dostarczone do skryptu,

$_FILES – zmienne dostarczone do skryptu przez przesłanie plików do serwera (file upload) metodą POST protokołu HTTP,

$_ENV – zmienne dostarczone do skryptu przez środowisko systemu operacyjnego,

$_REQUEST – zmienne z tablic $_GET, $_POST i $_COOKIE zebrane w jednej tablicy,

$_SESSION – zmienne aktualnie zarejestrowane jako sesyjne.

W starszych wersjach PHP (tj. do PHP 3 włącznie) zmienne przychodzące z zewnątrz były automatycznie rejestrowane jako zmienne globalne w skrypcie bez pośrednictwa tablic. Później rozwiązanie to zarzucono ze względów bezpieczeństwa. Choć nie jest to zalecane, można takie zachowanie przywrócić włączając opcję konfiguracyjną PHP register_globals.


<< Poprzedni slajd | Spis treści | Następny slajd >>