koristi global da bi deklarisao da je $_GET globalna promenjiva. (da, deluje zbunjujuće, i naravno da je hack, ali radi ;)
mrzi me da izmišljam novi primer. evo confiq-ovog
Code:
<pre>
<?php
ini_set('display_startup_errors',1);
ini_set ('error_reporting', E_ALL);
$array = 'GET';
$key = 'a';
// ovo radi...
echo "<hr>1. Direktno...
Niz: $array
Kljuc: $key
Vrednost:". ${'_'.$array}[$key];
function readvalue($array,$key) {
$global="_$array";
global $$global;
$_A['a']='Working';
echo "<hr>2. Iz funkcije...
Niz: $array
Kljuc: $key
U arrajy: ".${'_'.$array}[$key];
}
readvalue('A','a'); #Obicna promenljiva i radi
readvalue('GET','a'); #super globalna promenljiva i ne radi
highlight_file('echo.php');
?>
btw, ovo je moglo da se reši i sa eval() i sa $GLOBALS, i...
a ustpu, umesto prosleđivanja imena niza, zar nisi lakše mogao da proslediš sam niz ;) ili još bolje kao referencu...