unserialize
var_dump
Fonctions de gestion des variables
PHP Manual

# unset

(PHP 4, PHP 5)

unset — Détruit une variable

### Description

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

unset() détruit une variable spécifique.

Le comportement de unset() à l'intérieur d'une fonction peut varier suivant le type de variable que vous voulez détruire.

Si une variable globale est détruite avec unset() depuis une fonction, seule la variable locale sera détruite. Le variable globale gardera la valeur acquise avant l'appel à unset().

`<?php
function destroy_foo()
{
global $foo;
unset($foo);
}
$foo = 'bar';
destroy_foo();
echo $foo;
?>`

L'exemple ci-dessus va afficher :

    bar

Si vous désirez détruire une variable globale à l'intérieur d'une fonction, vous pouvez utiliser le tableau $GLOBALS pour le faire :

`<?php
function foo()
{
unset($GLOBALS['bar']);
}
$bar = "truc";
foo();
?>`

Si une variable qui est passée par référence est détruite à l'intérieur d'une fonction, seule la variable locale sera détruite. La variable globale conservera la même valeur qu'elle avait avant l'appel de unset().

`<?php
function foo(&$bar)
{
unset($bar);
$bar = "blah";
}
$bar = 'truc';
echo "$bar\n";
foo($bar);
echo "$bar\n";
?>`

L'exemple ci-dessus va afficher :

    truc
    truc

Si une variable statique est détruite à l'intérieur d'une fonction unset() détruira la variable seulement dans le contexte du reste de la fonction. Les appels suivants restaureront la valeur précédente de la variable.

`<?php
function foo()
{
static $bar;
$bar++;
echo "Avant unset : $bar, ";
unset($bar);
$bar = 23;
echo "après unset : $bar\n";
}
foo();
foo();
foo();
?>`

L'exemple ci-dessus va afficher :

    Avant unset : 1, après unset: 23
    Avant unset : 2, après unset: 23
    Avant unset : 3, après unset: 23

### Liste de paramètres

`var`

  La variable à détruire.

`var`

  Autres variables...

`...`

### Valeurs de retour

Aucune valeur n'est retournée.

### Historique

Version | Description
--- | ---
4.0.0 | unset() devient une expression. (En PHP 3, unset() retourne toujours 1).

### Exemples

Exemple #1 Exemple avec unset()

`<?php
// Destruction d'une seule variable
unset($foo);
// Destruction d'un élément de tableau
unset($bar['quux']);
// Destruction de plusieurs variables
unset($foo1, $foo2, $foo3);
?>`

### Notes

> Note: Comme ceci est une structure du langage, et non pas une fonction, il n'est pas possible de l'appeler avec les variables fonctions.

> Note: Il est possible de détruire n'importe quelle propriété visible dans le contexte courant.

> Note: Il n'est pas possible de détruire la variable spéciale $this à l'intérieur d'une méthode d'un objet, depuis PHP 5.

### Voir aussi

- isset()
- empty()
- array_splice()

unserialize
var_dump
Fonctions de gestion des variables
PHP Manual