Comunitatea PHP Romania
 

 
Elimină o variabilă dată

unset

(PHP 4, PHP 5)

unsetElimină o variabilă dată

Descrierea

void unset ( mixed $var [, mixed $var [, mixed $... ]] )

unset() distruge variabila specificată.

Comportamentul unset() în interiorul unei funcţii poate varia în dependenţă de tipul variabilei pe care încercaţi să o distrugeţi.

Dacă este aplicat unset() asupra unei variabile globale în interiorul unei funcţii, numai variabila locală va fi distrusă. Variabila din mediul apelant îşi va păstra aceeaşi valoare ca şi până la apelul unset().

<?php
function destroy_foo()
{
    global 
$foo;
    unset(
$foo);
}

$foo 'bar';
destroy_foo();
echo 
$foo;
?>

Exemplul de mai sus va afişa:

bar

Dacă doriţi să aplicaţi unset() asupra unei variabile globale din interiorul unei funcţii, puteţi utiliza tabloul $GLOBALS pentru aceasta:

<?php
function foo()
{
    unset(
$GLOBALS['bar']);
}

$bar "ceva";
foo();
?>

Dacă se aplică unset() în interiorul unei funcţii asupra unei variabile care este transmisă PRIN REFERINŢĂ, numai variabila locală va fi distrusă. Variabila din mediul apelant îşi va păstra aceeaşi valoare ca şi până la apelul unset().

<?php
function foo(&$bar)
{
    unset(
$bar);
    
$bar "blah";
}

$bar 'ceva';
echo 
"$bar\n";

foo($bar);
echo 
"$bar\n";
?>

Exemplul de mai sus va afişa:

ceva
ceva

Dacă se aplică unset() asupra unei variabile statice în interiorul unei funcţii, unset() distruge variabila numai în contextul restului funcţiei. Apelurile următoare vor restabili valoarea precedentă a variabilei.

<?php
function foo()
{
    static 
$bar;
    
$bar++;
    echo 
"Înainte de unset: $bar, ";
    unset(
$bar);
    
$bar 23;
    echo 
"după unset: $bar\n";
}

foo();
foo();
foo();
?>

Exemplul de mai sus va afişa:

Înainte de unset: 1, după unset: 23
Înainte de unset: 2, după unset: 23
Înainte de unset: 3, după unset: 23

Parametri

var

Variabila ce va fi eliminată.

var

O altă variabilă ..

...

Valorile întroarse

Nu este întoarsă nici o valoare.

Istoria schimbărilor

Versiunea Descriere
4.0.1 A fost adăugată susținerea argumentelor multiple.
4.0.0 unset() a devenit o expresie. (În PHP 3, unset() întotdeauna întorcea 1).

Exemple

Example #1 Exemplu unset()

<?php
// distruge o singură variabilă
unset($foo);

// distruge un singur element din tablou
unset($bar['quux']);

// distruge mai multe variabile
unset($foo1$foo2$foo3);
?>

Example #2 Utilizarea modificatorului (unset)

<?php
$name 
'Felipe';

var_dump((unset) $name);
?>

Note

Notă: Deoarece aceasta este o construcţie a limbajului şi nu o funcţie, ea nu poate fi apelată utilizând funcţii de operare cu variabile

Notă: Este posibil de a elimina chiar şi proprietăţi ale obiectelor vizibile în contextul curent.

Notă: Nu este posibil de a elimina $this în interiorul unei metode a unui obiect începând cu PHP 5.

Notă: La utilizarea unset() asupra proprietăţilor inaccesibile ale obiectelor, va fi apelată metoda de supraîncărcare __unset, dacă este declarată.

Vedeţi de asemenea

  • isset() - Determină dacă o variablă este stabilită și nu este NULL
  • empty() - Determină dacă o variabilă este vidă
  • __unset
  • array_splice() - Remove a portion of the array and replace it with something else


Ultimele discutii in forum RSS Forum

Ultimele articole Ultimele articole

Top membri

Pirahna Pirahna
la birou
Birkoff Birkoff
Bucuresti
carco carco
Bucuresti
mihaitha mihaitha
Sibiu
Mascka Mascka
Braila
Amenthes Amenthes
dechim dechim
Drobeta Turnu Severin
whooper whooper
Toronto ON
gabysolomon gabysolomon
Bacau
raul_ raul_

Newsletter


Email:
 inscriere
 renuntare
 
 Arhiva newsletter

Parteneriat

Copyright © 2001-2010 PHP Romania Add PHPRomania to Google Add PHPRomania to Del.icio.us Add PHPRomania to Stumbleupon Add PHPRomania to Yahoo! Add PHPRomania to Digg Add PHPRomania to Blink
Ads: Parteneri: gazduire web | inregistrare domenii
Powered by Simplis