Manual PHP
Înapoi
Înainte
unset
Descriere
unset() distruge variabilele specificate. de notat că în PHP 3, unset() returnează întotdeauna TRUE (de fapt valoarea întreagă 1).
În PHP 4, unset() nu mai este o funcţie, ci o instrucţiune.
De aceea, încercarea de a atribui unei variabile valoarea returnată de unset() se va solda cu eroare gramaticală (parse error).
Exemplu 1.
Exemplu pentru unset()
?php / / distruge o singură variabilă unset ($foo); / / distruge un singur element al unui tablou unset ($bar['quux']); / / distruge mai multe variabile unset ($foo1, $foo2, $foo3);?
Comportamentul unset() în interiorul unei funcţii poate să varieze în funcţie de ce anume se doreşte a fi distrus.
Dacă se aplică unset() pe o variabilă globală în interiorul unei funcţii, doar variabila locală va fi ştearsă.
Valoarea variabilei globale va fi aceeaşi după ce iese din mediul funcţiei.
?php function destroy_foo() {global $foo; unset($foo);} $foo = 'bar'; destroy_foo(); echo $foo;?
De asemenea, şi dacă o variabilă este transmisă prin referinţă, va fi distrusă doar variabila din interiorul funcţiei.
?php function foo( $bar) {unset($bar); $bar = "blah";} $bar = 'something'; echo "$bar\n"; foo($bar); echo "$bar\n";?
Dacă o variabilă statică este distrusă în interiorul unei funcţii, vor fi distruse toate variabilele şi referinţele lor.
?php function foo() {static $a; $a++; echo "$a\n"; unset($a);} foo(); foo(); foo();?
Dacă doriţi să distrugeţi o variabilă globală în interiorul unei funcţii, puteţi folosi tabloul $GLOBALS:
?php function foo() {unset($GLOBALS['bar']);} $bar = "something"; foo();?
Mai consultaţi isset() şi empty().
Înapoi
Acasã
Înainte
Sus