BluePink BluePink
XHost
Servere virtuale de la 20 eur / luna. Servere dedicate de la 100 eur / luna - servicii de administrare si monitorizare incluse. Colocare servere si echipamente de la 75 eur / luna. Pentru detalii accesati site-ul BluePink.
 
-Drumul tau catre internet-  
line decor
  HOME
line decor
   
 
Dubla Indirectare

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