Position actuelle: Accueil> Derniers articles> Des exemples d'application pour la fonction PHP IS_NAN et filter_var

Des exemples d'application pour la fonction PHP IS_NAN et filter_var

gitbox 2025-05-19

En PHP, la vérification et le filtrage des données sont des parties qui ne peuvent pas être ignorées pendant le processus de développement. Surtout lors du traitement de l'entrée des utilisateurs, la garantie de la validité et de la sécurité des données est cruciale. Dans cet article, nous explorerons comment utiliser la fonction IS_NAN et la fonction filter_var en PHP pour obtenir une vérification et un filtrage des données plus efficaces.

1. Introduction à la fonction is_nan

IS_NAN () est une fonction intégrée dans PHP pour déterminer si une valeur donnée est un "non numerique" (NAN). En mathématiques, NAN signifie «pas un nombre» (pas un numéro). Par exemple, la division par zéro ou d'autres opérations mathématiques invalides peut entraîner un retour de NAN.

L'utilisation de la fonction is_nan () est très simple. Passer dans un paramètre. Si le paramètre est NAN, il renverra vrai , sinon il reviendra faux . La syntaxe de base de cette fonction est la suivante:

 is_nan($value);
  • $ Value : la valeur à vérifier.

Par exemple:

 $value = acos(8);  // Calculez la valeur du cosinus inverse,Produira NaN
if (is_nan($value)) {
    echo "C'est un NaN valeur";
} else {
    echo "C'est un有效的数valeur";
}

2. Introduction à la fonction filter_var

filter_var () est une fonction puissante de PHP, principalement utilisée pour filtrer et vérifier les données. Il peut effectuer plusieurs types de vérification sur différents types de variables, tels que les entiers, les adresses e-mail, les URL, etc. La syntaxe de filter_var () est la suivante:

 filter_var($value, $filter, $options);
  • $ Value : la variable à filtrer ou à vérifier.

  • $ filtre : spécifie le filtre à appliquer (par exemple, filter_validate_int , filter_validate_email ).

  • $ Options : paramètre facultatif pour transmettre des options de filtre spécifiques.

Par exemple, vérifiez qu'une variable est un entier valide:

 $input = "123";
if (filter_var($input, FILTER_VALIDATE_INT)) {
    echo "C'est un有效的整数";
} else {
    echo "Ce n'est pas un entier valide";
}

3. Utiliser Is_nan et filter_var pour implémenter la vérification et le filtrage des données

Bien que Filter_Var () soit très puissant, il cible principalement la normalisation et la validation des types de données à format fixe. Si nous devons déterminer plus attentivement si les données contient des valeurs NAN, nous pouvons utiliser IS_NAN () et filter_var () pour obtenir une vérification et un filtrage des données plus efficaces.

Exemple: vérifiez que le nombre est valide et non nan

Supposons que nous devons vérifier une valeur d'entrée pour nous assurer qu'il s'agit d'un nombre valide et qu'il n'est pas NAN. Vous pouvez utiliser filter_var () en combinaison pour la vérification numérique, puis utiliser is_nan () pour vérifier s'il est nan.

 $input = "123.45";  // 假设这是从用户输入中获取的valeur

// utiliser filter_var Vérifiez qu'il s'agit d'un nombre valide
if (filter_var($input, FILTER_VALIDATE_FLOAT) !== false) {
    // Une fois la vérification est un nombre valide,Utiliser à nouveau is_nan Vérifiez si c'est NaN
    if (is_nan((float)$input)) {
        echo "该valeur是 NaN";
    } else {
        echo "该valeur是有效数字";
    }
} else {
    echo "该valeur不C'est efficace数字";
}

Exemple: filtrez l'URL et vérifiez s'il contient nan

Dans certains scénarios, nous devrons peut-être vérifier et filtrer l'URL fournis par l'utilisateur, puis vérifier davantage les données non valides. En supposant que l'URL entrée par l'utilisateur peut contenir des caractères illégaux, nous pouvons utiliser filter_var () pour vérifier l'URL, puis utiliser IS_NAN () pour s'assurer qu'il n'y a pas de données NAN illégales dans l'URL.

 $url = "https://www.gitbox.net/some/path";  // Entrée utilisateur URL

// Filtre et vérifier URL Est-ce valable ou non
if (filter_var($url, FILTER_VALIDATE_URL)) {
    // Supposons que certains URL Les paramètres peuvent contenir NaN,Une inspection supplémentaire est nécessaire
    if (strpos($url, 'NaN') !== false || is_nan((float)$url)) {
        echo "URL Comprend des données non valides(NaN)";
    } else {
        echo "URL C'est efficace";
    }
} else {
    echo "URL invalide";
}

4. Résumé

Dans PHP, IS_NAN () et filter_var () sont deux fonctions très pratiques qui peuvent nous aider à vérifier et à filtrer plus efficacement les données. En combinant ces deux fonctions, nous pouvons nous assurer que les données répondent au format attendu et ne contient pas de valeurs non valides ou non sécurisées lors du traitement de l'entrée de l'utilisateur. En particulier pour les entrées de types tels que les nombres et les URL, cette méthode peut considérablement améliorer la robustesse et la sécurité du traitement des données.

En utilisant ces fonctions intégrées raisonnablement, nous pouvons écrire du code plus sûr et efficace, réduisant les erreurs de vérification des données et améliorer ainsi la qualité et l'expérience utilisateur de l'application.