PHP Superglobal Variables en Register_Globals
PHP heeft een speciaal soort variabele die een superglobal wordt genoemd. De reden dat deze variabelen speciaal zijn, is omdat ze automatisch beschikbaar zijn voor elk PHP-programma zonder dat de programmeur ze in zijn programma maakt of definieert. Je kunt ze beschouwen als "ingebouwde" variabelen.

De manier waarop u toegang krijgt tot deze variabelen verschilt afhankelijk van of register_globals is ingeschakeld of uitgeschakeld op uw server. Vóór PHP versie 4.2 was register_globals standaard ingeschakeld. Om veiligheidsredenen echter; deze instelling is nu standaard uitgeschakeld (versie 4.2+). Het is natuurlijk aan de mensen die uw server uitvoeren om te beslissen of ze de standaardinstelling overschrijven en register_globals inschakelen. De eenvoudigste manier om uw eigen server te testen, is door phpinfo () te gebruiken. U hebt waarschijnlijk een link naar deze webpagina in het administratieve gedeelte van uw website. Op deze webpagina vindt u het gedeelte Configuratie PHP Core met deze informatie.

Zoals hierboven vermeld, hebt u anders toegang tot de superglobals, afhankelijk van de instelling van uw server. Voor de nieuwe serverconfiguratie kregen de superglobals nieuwe namen. Als uw server nog steeds de oude instelling heeft, is het beter om de nieuwe namen toch te gebruiken. Als u deze nieuwe namen gebruikt, weet u zeker dat uw programma's onder beide serverconfiguraties werken. Dit is echter niet het geval voor de oude namen. Ze werken alleen voor de oude serverconfiguratie. De onderstaande tabel toont de oude en nieuwe namen en een beschrijving van de superglobals. Merk op dat de namen van deze superglobals in alle hoofdletters staan.

NieuwOudBeschrijving
$ _GET $ HTTP_GET_VARS Deze superglobal bevat de variabelen die naar het programma zijn verzonden via de methode get, zoals een guery-tekenreeks.
$ _POST $ HTTP_POST_VARS Deze superglobal bevat de variabelen die via de post-methode naar het programma zijn verzonden.
$ _COOKIE $ HTTP_COOKIE_VARS Deze superglobal bevat de variabelen die voor het programma beschikbaar zijn vanuit een cookie.
$ _SESSION $ HTTP_SESSION_VARS Deze superglobal bevat de variabelen die door het programma zijn geregistreerd via een sessie.
$ _FILES $ HTTP_POST_FILES Deze superglobal bevat de variabelen die beschikbaar zijn vanaf een bestandsupload.
$ _ENV $ _HTTP_ENV_VARS Deze superglobal bevat de variabelen die beschikbaar zijn in de serveromgeving.
$ _REQUEST -- Deze superglobal bevat de variabelen die door elk type gebruikersinvoer naar een programma worden verzonden. Dit is het meest algemene of universele type superglobal.
$ _SERVER -- Deze superglobal bevat informatie over de server, zoals bestandspaden.





Video-Instructies: [ Learn PHP 5 In Arabic ] #79 - Predefined Variables - Globals (April 2024).