114 votes

isset() et empty() - ce qu'il faut utiliser

Pourriez-vous m'aider à améliorer mon style de codage? :) Dans certaines tâches, je dois vérifier si une variable est vide ou contient quelque chose. Pour résoudre cette tâche, je fais généralement ce qui suit.

Vérifiez - cette variable est-elle définie ou non ? Si elle est définie, je vérifie si elle est vide ou non.

<?php
    $var = '23';
    if (isset($var)&&!empty($var)){
        echo 'not empty';
    }else{
        echo 'is not set or empty';
    }
?>

Et j'ai une question - dois-je utiliser isset() avant empty() - est-ce nécessaire ? TIA !

0 votes

Vide est !isset($var) || $var == false

3 votes

A mon avis, empty() est un développement horrible de PHP. Comme il considère "0" dans toutes les formes comme "vide", vous pouvez tomber dans de mauvais pièges qui vous feront perdre beaucoup de temps de débogage. Je dirais : évitez-le à tout prix et écrivez simplement la logique vous-même.

-4voto

Akos Points 794
$var = 'abcdef';
if(isset($var))
{
   if (strlen($var) > 0);
   {
      //do something, string length greater than zero
   }
   else
   {
     //do something else, string length 0 or less
   }
}

Il s'agit d'un exemple simple. J'espère que cela vous aidera.

edit : ajouté isset dans le cas où une variable n'est pas définie comme ci-dessus, cela causerait une erreur, vérifier si elle a été définie au moins une fois permettra d'éviter quelques maux de tête par la suite.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X