Maison >développement back-end >tutoriel php >`isset()` vs `empty()` : quand devriez-vous utiliser chacun pour l'évaluation des variables PHP ?

`isset()` vs `empty()` : quand devriez-vous utiliser chacun pour l'évaluation des variables PHP ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-05 03:27:09635parcourir

`isset()` vs. `empty()`: When Should You Use Each for PHP Variable Evaluation?

isset() versus empty() pour l'évaluation des variables

En codage, il est souvent nécessaire d'évaluer si une variable est définie ou vide . Bien que leurs fonctionnalités soient similaires, les choix entre isset() et empty() varient en fonction du résultat souhaité.

empty()

empty() vérifie si une variable est défini et examine simultanément sa valeur. Il considère les variables avec les valeurs suivantes comme vides :

  • "" (chaîne vide)
  • 0 (entier)
  • 0.0 (float)
  • "0" (string)
  • NULL
  • FALSE
  • array() (tableau vide)
  • Variables non déclarées

isset()

isset(), en revanche, détermine uniquement si une variable a été définie et n'est pas NULL. Il ne prend pas en compte la valeur de la variable.

Lequel utiliser

Le choix entre isset() et empty() dépend du comportement souhaité :

  • Pour vérifier si une variable est à la fois définie et non vide (à l'exception de NULL), utilisez empty().
  • Pour vérifier si une variable est définie, quelle que soit sa valeur, utilisez isset().

Exemple

Voici une version améliorée de l'exemple de code fourni :

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

Ce code révisé utilise empty() directement sans avoir besoin d'isset() puisque empty() vérifie à la fois l'existence et la valeur non vide de la variable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn