La fonction isset et la valeur null

Comment détecter une valeur null dans un tableau ?

13 avril 2014

Lorsqu'ils cherchent à vérifier l'existence d'une clé dans un tableau, beaucoup de développeurs utilisent la fonction isset. Un simple test nous montre pourtant que ce n'est pas le meilleur choix à faire.

Est-ce que cette clé est présente dans mon tableau ?

$a = array(     'cle1' => null,
                'cle2' => false,
                'cle3' => 0);

var_dump(
        isset($a['cle1']), // false
        isset($a['cle2']), // true
        isset($a['cle3']), // true
        !empty($a['cle1']), // false
        !empty($a['cle2']), // false
        !empty($a['cle3']), // false
        array_key_exists('cle1', $a), // true
        array_key_exists('cle2', $a), // true
        array_key_exists('cle3', $a) // true
);
	

Nous venons de voir qu'il est préférable d'utiliser la fonction array_key_exists pour vérifier l'existence d'une clé dans un tableau, surtout si sa valeur est susceptible d'être null.

De toute façon, pas d'excuses , c'est marqué tout en haut dans le manuel PHP : isset — Détermine si une variable est définie et est différente de NULL

A bientôt !

Par
Créateur et administrateur.

Dans la même catégorie

Regexp en PHP, le mémo indispensable
Les différentes façons de fusionner deux tableaux en PHP
Le lazy load en PHP
La priorité des opérateurs en PHP

Commentaire(s)