isset

(PHP 4, PHP 5)

isset — Détermine si une variable est affectée

Description

bool isset ( mixed $var [, mixed $var [, $...]] )

isset() renvoie TRUE si la variable var est définie, FALSE sinon.

Si une variable a été détruite avec la fonction unset() , la fonction isset() renverra FALSE . isset() renvera FALSE lors du test d'une variable de valeur NULL . Notez aussi que le caractère nul ("\0" ) n'est pas équivalent à la constante PHP NULL .

Attention !: isset() fonctionne uniquement avec des variables car l'utilisation de toute autre chose aura comme conséquence une erreur d'analyse. Pour vérifier si une constants est définie, utilisez la fonction defined() .

Exemple 2769. Exemple avec isset()

<?php

$var 
'' ;

// Ceci est vrai, alors le texte est affiché
if (isset( $var )) {
    echo 
'Cette variable existe, donc je peux l\'afficher.' ;
}

// Dans les exemples suivants, nous utilisons var_dump() pour afficher 
// le retour de la fonction isset().

$a  'test' ;
$b  'anothertest' ;

var_dump (isset( $a ));       // TRUE
var_dump (isset( $a $b ));  // TRUE

unset ( $a );

var_dump (isset( $a ));      // FALSE
var_dump (isset( $a $b ));  // FALSE

$foo  NULL ;
var_dump (isset( $foo ));    // FALSE

?>

Cela fonctionne aussi avec les tableaux :

Exemple 2770. Exemple avec isset() et un tableau

<?php

$a 
= array ( 'test'  =>  1 'bonjour'  =>  NULL );

var_dump (isset( $a [ 'test' ]));             // TRUE
var_dump (isset( $a [ 'foo' ]));              // FALSE
var_dump (isset( $a [ 'bonjour' ]));            // FALSE

// La clé 'bonjour' vaut NULL et est considérée comme non existante
// Si vous voulez vérifier l'existence de cette clé, utilisez cette fonction
var_dump ( array_key_exists ( 'bonjour' $a ) );  // TRUE

?>

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 .

Voir aussi empty() , unset() defined() , le tableau de comparaison de types , is_null() , array_key_exists() et l'opérateur de contrôle de rapport d'erreurs @ .