Dubla indirectare ($$):
Stim deja ca oricarei variabile i se poate atribui o valoare, de forma:
$variabila = 3;
sau
$variabila2 = "Hello world!";
Ei bine, cand dorim ca 'numele' variabilei sa fie in functie de o variabila? (de exemplu transmisa de utilizator printr-un formular - desi dau acest exemplu doar ca sa se inteleaga, nu e bine in general sa ne incredem in ceea ce ne poate transmite utilizatorul, ci trebuie sa verificam aceasta foarte bine, din motive de siguranta)
De exemplu, variabila $myvar = 'alta';
Bun, pana aici stim ce se intampla, nu?
Daca scriem in programul nostru:
echo $myvar;
va aparea: alta
daca insa facem asa:
$alta = 'Hello world!';
$myvar = 'alta';
echo $$myvar;
Ce credeti ca se intampla? Ati ghicit nu-i asa?
Se va afisa: Hello world!
Pe scurt, dar cam complicat, simpla si dubla indirectare se poate rezuma asa:
-simlpa indirectare: foloseste valoarea variabilei curente
-dubla indirectare: foloseste valoarea variabilei cu numele continut in variabila curenta
PS. am gasit acest lucru foarte util cand am avut nevoie de a genera vreo 200 de nume de variabile pentru javascript, intr-un formular cu multe date de luat, de forma:
document.myform.camp001.value = ..
document.myform.camp002.value = ..
Bogdan |