PHP superglobal varijable i register_Globals
PHP ima posebnu vrstu varijable koja se naziva superglobal. Razlog su te varijable posebne jer su automatski dostupne bilo kojem PHP programu, a da ih programer ne stvori ili definira u svom programu. Možete ih misliti kao "ugrađene" varijable.

Način na koji ćete pristupiti ovim varijablama razlikuje se ovisno o tome je li register_globals na vašem poslužitelju uključen ili isključen. Prije PHP verzije 4.2, register_globals je zadano uključen. Međutim, iz sigurnosnih razloga; ova je postavka sada zadano isključena (verzija 4.2+). Naravno, ljudi koji upravljaju vašim poslužiteljem odlučuju hoće li poništiti zadane postavke i uključiti register_globals. Najlakši način za testiranje vlastitog poslužitelja je korištenje phpinfo (). Vjerojatno ćete imati vezu do ove web stranice u administrativnom području vaše web stranice. Na ovoj web stranici naći ćete odjeljak Configuration PHP Core koji sadrži ove informacije.

Kao što je gore spomenuto, superglobalima ćete pristupati različito, ovisno o postavci vašeg poslužitelja. Za novu postavku poslužitelja superglobalima su data nova imena. Ako vaš poslužitelj i dalje ima staro podešavanje, bilo bi bolje da počnete koristiti nova imena. Ako koristite ta nova imena, možete biti sigurni da će vaši programi raditi pod obje konfiguracije poslužitelja. Međutim, to se ne odnosi na stara imena. Radit će samo za staru konfiguraciju poslužitelja. Grafikon u nastavku prikazuje stara i nova imena i opis superglobalista. Primijetite da su imena ovih superglobalima velikim slovima.

NoviStarOpis
$ _GET $ HTTP_GET_VARS Ovaj superglobal sadrži varijable koje su programu poslane metodom get, poput vodećeg niza.
$ _POST $ HTTP_POST_VARS Ovaj superglobal sadrži varijable koje su programom poslane metodom.
$ _COOKIE $ HTTP_COOKIE_VARS Taj superglobal sadrži varijable dostupne programu iz kolačića.
$ _SESSION $ HTTP_SESSION_VARS Ovaj superglobal sadrži varijable koje je program registrirao putem sesije.
$ _FILES $ HTTP_POST_FILES Ovaj superglobal sadrži varijable dostupne prilikom prijenosa datoteke.
$ _ENV $ _HTTP_ENV_VARS Ovaj superglobal sadrži varijable dostupne iz okruženja poslužitelja.
$ _REQUEST -- Ovaj superglobal sadrži varijable koje su programu poslane od strane bilo koje vrste korisničkog unosa. Ovo je najopćenitiji ili univerzalni tip superglobalista.
$ _SERVER -- Ovaj superglobal sadrži informacije o poslužitelju kao što su staze datoteka.





Upute Video: What is Register_Globals? In PHP (Travanj 2024).