[Tutorial PHP] Domeniul de vizibilitate al variabilelor
Scris: Vin Feb 14, 2014 9:02 am
Nume Tutorial: Domeniul de vizibilitate al variabilelor - Cum se pot accesa variabilele.
Descriere: Domeniul de vizibilitate al variabilelor - Cum se pot accesa variabilele.
Download:
Autor:
Sursa (Link-ul oficial):
Propria parere:
Tutorialul:
În PHP o variabilă poate fi accesată doar în contextul în care a fost definită. De exemplu, o variabilă definită în interiorul unei funcţii nu va putea fi accesată decât de instrucţiunile din interiorul acelei funcţii. Mai mult, în mod implicit, o variabilă definită în exteriorul unei funcţii nu va putea fi accesată în interiorul funcţiei chiar dacă ea nu este redefinită în cadrul funcţiei.
Pentru ca o funcţie să aibă acces la o variabilă definită în afara ei, variabila trebuie redeclarată ca variabilă globală în interiorul funcţiei.
Să considerăm următorul exemplu:
Observăm că nu se afişează valoarea 1 deoarece instrucţiunea echo $a se referă la variabila locală $a care nu este definită, deci nu are nici o valoare. În continuare, este o versiune în care instrucţiunea echo $a va accesa variabila $a definită în afara funcţiei test():
O a doua posibilitate de a accesa o variabilă definită în afara funcţiei este folosirea vectorului $GLOBALS:
Descriere: Domeniul de vizibilitate al variabilelor - Cum se pot accesa variabilele.
Download:
Autor:
Sursa (Link-ul oficial):
Propria parere:
Tutorialul:
În PHP o variabilă poate fi accesată doar în contextul în care a fost definită. De exemplu, o variabilă definită în interiorul unei funcţii nu va putea fi accesată decât de instrucţiunile din interiorul acelei funcţii. Mai mult, în mod implicit, o variabilă definită în exteriorul unei funcţii nu va putea fi accesată în interiorul funcţiei chiar dacă ea nu este redefinită în cadrul funcţiei.
Pentru ca o funcţie să aibă acces la o variabilă definită în afara ei, variabila trebuie redeclarată ca variabilă globală în interiorul funcţiei.
Să considerăm următorul exemplu:
Cod: Selectaţi tot
<?php
$a = 1;
function test () {
echo $a;
}
test ();
?> Cod: Selectaţi tot
<?php
$a = 1;
function test () {
global $a;
echo $a;
}
test ();
?> Cod: Selectaţi tot
<?php
$a = 1;
function test () {
echo $GLOBALS ["a"];
}
test ();
?>