A korai (php 4.2.0 előtt) php változatokban a GET, POST metódussal beküldött paraméterek automatikusan globális változókká váltak a szerver oldali php szkriptekben. Ez helytelen használat esetén lehetőséget biztosított a támadóknak, hogy olyan értékű változókat hozzanak létre a szerver oldali scriptekben, amelyek módosítják a rendszer viselkedését. Helyes használat esetén azonban ez a beállítás sem okoz problémát. Mivel a PHP-val nagyon sokan gyorsan éles kódot írnak, ezért célszerűbbnek vélték a Fejlesztők default módon megtiltani a használatukat és csak a GET és POST tömbváltozókon keresztül lehet ekkor globális változókat átvenni.
A paraméter ki- és bekapcsolását a php.ini-ben a
register_globals = on / off kapcsolja.
A klienstől kapott globális paraméterek globális változóként való használatának helyes módja:
<?php if( !isset($_GET['parameter']) ) $parameter = ''; else $parameter = $_GET['parameter']; ...... $b = ''; print $b; ?>
A fenti konvenció azt tartja szem előtt, hogy akár paraméterként átadott globális értékek, akár a scriptben magában deklarált és felhasznált globális értékek esetén kötelezően értéket kell adni egy változónak, mielőtt a változó értékét felhasználnánk kiíró, vagy bármiféle egyéb utasításban.