Aller au contenu

Tester l'existence d'une variable

isset et empty sont deux fonctions permettant de vérifier l'état des variables.

isset

La fonction isset détermine si une variable est définie et n'est pas null. Elle renvoie true si la variable existe et n'est pas null, sinon elle renvoie false.

isset($var) : true si variable définie ET non NULL

<?php
$var1 = "Hello, World!";
$var2 = null;


if (isset($var1)) {
    echo '$var1 est définie et n\'est pas null';
} else {
    echo '$var1 n\'est pas définie ou est null';
}
// affichera $var1 est définie et n'est pas null

if (isset($var2)) {
    echo '$var2 est définie et n\'est pas null';
} else {
    echo '$var2 n\'est pas définie ou est null';
}
// affichera $var2 n'est pas définie ou est null

if (isset($var3)) {
    echo '$var3 est définie et n\'est pas null';
} else {
    echo '$var3 n\'est pas définie ou est null';
}
// affichera $var3 n'est pas définie ou est null

empty

La fonction empty vérifie si une variable est vide. Une variable est considérée comme vide si elle n'existe pas ou si sa valeur est équivalente à false. Cela inclut les valeurs suivantes : 0, 0.0, "0", "", null, false, et les tableaux vides.

empty($var) : true si !isset($var) OU 0 , "" ,"0" , false, array()

<?php
$var1 = "Hello, World!";
$var2 = "";
$var3 = 0;
$var4 = null;

if (empty($var1)) {
    echo '$var1 est vide';
} else {
    echo '$var1 n\'est pas vide';
}
// affichera $var1 n'est pas vide

if (empty($var2)) {
    echo '$var2 est vide';
} else {
    echo '$var2 n\'est pas vide';
}
// affichera $var2 est vide

if (empty($var3)) {
    echo '$var3 est vide';
} else {
    echo '$var3 n\'est pas vide';
}
// affichera $var3 est vide

if (empty($var4)) {
    echo '$var4 est vide';
} else {
    echo '$var4 n\'est pas vide';
}
// affichera $var4 est vide

if (empty($var5)) {
    echo '$var5 est vide';
} else {
    echo '$var5 n\'est pas vide';
}
// affichera $var5 est vide

Différences clés :

  • isset vérifie uniquement si une variable est définie et n'est pas null.

  • empty vérifie si une variable est vide, ce qui inclut plus de cas que isset.