Position actuelle: Accueil> Derniers articles> Comment utiliser IS_NAN en combinaison avec IS_NUMERIC pour vérifier que l'entrée est un nombre

Comment utiliser IS_NAN en combinaison avec IS_NUMERIC pour vérifier que l'entrée est un nombre

gitbox 2025-05-27

En PHP, il est une exigence courante de vérifier que la saisie de l'utilisateur est un nombre valide. Surtout lors du traitement des soumissions de formulaires, il est très important de s'assurer que ce que l'utilisateur entre est un nombre. PHP fournit deux fonctions utiles: is_numeric () et is_nan () pour nous aider à vérifier les données d'entrée.

Qu'est-ce que c'est_numeric () ?

is_numeric () est une fonction intégrée PHP pour vérifier si une variable est une chaîne numérique ou une chaîne de caractères numériques. La fonction renvoie true si la variable est une chaîne numérique ou numérique, et false si la variable n'est pas une chaîne numérique.

Exemple:

 <?php
$var = "123.45";

if (is_numeric($var)) {
    echo "$var C&#39;est un nombre valide";
} else {
    echo "$var 不C&#39;est un nombre valide";
}
?>

Le code ci-dessus sortira 123.45 comme numéro valide , car la chaîne "123.45" est considérée comme un nombre valide.

Qu'est-ce que c'est_nan () ?

is_nan () est une fonction utilisée pour vérifier si une variable est de type "pas un nombre". Habituellement, IS_NAN () est utilisé pour vérifier que le calcul numérique renvoie un nombre non valide, comme le résultat de la division par zéro. Il convient de noter que is_nan () ne peut agir que sur des types numériques, donc pour les chaînes ou autres types, IS_NAN () reviendra faux .

Exemple:

 <?php
$var = acos(8);  // acosLa plage de paramètres de la fonction est-1arriver1,Hors de portée reviendraNaN

if (is_nan($var)) {
    echo "s&#39;avérerNaN";
} else {
    echo "结果C&#39;est un nombre valide";
}
?>

Dans cet exemple, comme le résultat d' ACOS (8) est NAN, la sortie sera NAN .

Comment combiner is_numeric () et is_nan () pour vérifier l'entrée de l'utilisateur?

Dans le développement réel, les utilisateurs peuvent saisir diverses données illégales, telles que des chaînes vides, des lettres, des caractères spéciaux, etc. Pour nous assurer que l'entrée est valide, nous pouvons utiliser is_numeric () pour déterminer si l'entrée est un nombre et que l'utilisation est_nan () pour garantir que l'entrée ne devient pas un nombre invalide (NAN). Si l'utilisateur saisit un nombre et n'est pas calculé comme NAN, nous pouvons penser que l'entrée est un nombre valide.

Exemple de code:

 <?php
// Obtenez la saisie des utilisateurs
$userInput = $_POST['user_input'];  // Supposons que les données entrées par l&#39;utilisateur adoptentPOSTMéthode Soumettre

// Déterminer si l&#39;entrée est un nombre valide
if (is_numeric($userInput) && !is_nan($userInput)) {
    echo "输入C&#39;est un nombre valide";
} else {
    echo "Entrée non valide,Veuillez fournir un numéro valide";
}
?>

Dans cet exemple, la première utilisation is_numeric () pour déterminer si l'entrée est un nombre. S'il s'agit d'un nombre, utilisez IS_NAN () pour vérifier si l'entrée est un numéro valide. Cela garantit que l'entrée est à la fois un nombre et n'est pas une valeur "nan" non valide.

Résumer

Dans PHP, IS_NUMERIC () et IS_NAN () sont deux fonctions très utiles. is_numeric () nous aide à vérifier que l'entrée est un nombre valide, tandis que is_nan () garantit que le nombre que nous traitons n'est pas une valeur NAN non valide. En combinant ces deux fonctions, l'entrée des utilisateurs peut être plus entièrement vérifiée et les données non valides peuvent être évitées.