„PHP Superglobal Variables“ ir „Register_Globals“
PHP turi ypatingą rūšies kintamąjį, kuris vadinamas superglobalu. Šie kintamieji yra ypatingi todėl, kad jie yra automatiškai prieinami bet kuriai PHP programai, o ne programuotojui sukuriant ar neapibrėžiant jų programoje. Galite galvoti apie juos kaip apie „įmontuotus“ kintamuosius.

Tai, kaip jūs prieisite prie šių kintamųjų, skiriasi priklausomai nuo to, ar register_globals jūsų serveryje įjungtas, ar išjungtas. Prieš PHP 4.2 versiją „register_globals“ buvo įjungta pagal numatytuosius nustatymus. Tačiau saugumo sumetimais; šis nustatymas dabar išjungtas pagal numatytuosius nustatymus (4.2 ir naujesnės versijos). Žinoma, žmonės, kurie paleidžia jūsų serverį, turi nuspręsti, ar nepaisyti numatytojo nustatymo ir įjungti register_globals. Lengviausias būdas patikrinti savo serverį yra naudoti „phpinfo“ (). Tikriausiai turėsite nuorodą į šį tinklalapį savo svetainės administracinėje srityje. Šiame tinklalapyje rasite skyrių „Configuration PHP Core“, kuriame yra ši informacija.

Kaip minėta aukščiau, superglobaliukus prieisite skirtingai, priklausomai nuo jūsų serverio nustatymų. Naujų serverių sąrankai superglobatos buvo suteiktos naujais pavadinimais. Jei jūsų serveryje vis dar yra senasis nustatymas, vis tiek geriau pradėti naudoti naujus pavadinimus. Jei naudosite šiuos naujus pavadinimus, galėsite būti tikri, kad jūsų programos veiks pagal abi serverio konfigūracijas. Tačiau tai netaikoma seniesiems vardams. Jie veiks tik naudojant senąją serverio konfigūraciją. Žemiau esančioje diagramoje pateikiami seni ir nauji pavadinimai bei supergibalų aprašymas. Atkreipkite dėmesį, kad šių superglobalų pavadinimai rašomi didžiosiomis raidėmis.

NaujaSenasapibūdinimas
$ _GET USD HTTP_GET_VARS Šiame supergramale yra kintamieji, kuriuos programa siunčia programos gavimo metodu, pavyzdžiui, linksma eilutė.
$ _POST USD HTTP_POST_VARS Šiame supergrafe yra kintamieji, siunčiami į programą post metodu.
$ _COOKIE USD HTTP_COOKIE_VARS Šiame supergrafe yra kintamieji, kuriuos programai gali suteikti slapukas.
$ _SESSION USD HTTP_SESSION_VARS Šiame supergrafe yra kintamieji, kuriuos programa užregistravo sesijos metu.
$ _FILAI USD HTTP_POST_FILES Šiame supergrafe yra kintamieji, kuriuos galima įkelti iš failo.
$ _ENV $ _HTTP_ENV_VARS Šiame supergrafe yra kintamieji, kuriuos galima gauti iš serverio aplinkos.
$ _REQUEST -- Šiame supergrafe yra kintamieji, kuriuos programai siunčia bet kokio tipo vartotojo įvestys. Tai yra labiausiai paplitęs arba universalus superglobolo tipas.
$ _SERVER -- Šiame supergrafe yra informacijos apie serverį, pvz., Failų kelius.