Position actuelle: Accueil> Derniers articles> Utiliser is_nan en php pour déterminer si le résultat de calcul est nan

Utiliser is_nan en php pour déterminer si le résultat de calcul est nan

gitbox 2025-05-27

Dans PHP, la fonction is_nan () est utilisée pour déterminer si une valeur est nan (pas-un nombre, non-nombre). Nan est une valeur flottante spéciale qui se produit généralement lorsqu'aucune valeur numérique significative n'est générée dans les calculs mathématiques, tels que 0 divisé par 0, ou des opérations numériques qui calculent le nombre infini.

Dans cet article, nous présenterons comment utiliser la fonction is_nan () pour déterminer si le résultat de calcul est NAN et montrer comment l'utiliser en combinaison avec des exemples réels.

1. Introduction à la fonction is_nan ()

La syntaxe de base de la fonction is_nan () est la suivante:

 is_nan($var);
  • $ var : la variable à juger.

  • Valeur de retour: vrai si $ var est nan , sinon faux .

L'utilisation courante de cette fonction est de vérifier si le résultat est NAN lors de l'exécution des opérations mathématiques pour éviter les erreurs imprévues ou les résultats illogiques.

2. Scénarios courants pour déterminer si le résultat de calcul est nan

Dans de nombreux calculs mathématiques, les résultats du NAN peuvent être rencontrés. Par exemple, 0 divisé par 0 ou toute autre opération mathématique illégale retournera NAN . Nous pouvons utiliser is_nan () pour vérifier si le calcul produit une valeur non valide.

Exemple 1: 0 divisé par 0

 <?php
$result = 0 / 0; // s&#39;avérer NaN
if (is_nan($result)) {
    echo "计算s&#39;avérer NaN";
} else {
    echo "Le résultat du calcul n&#39;est pas NaN";
}
?>

Dans cet exemple, 0/0 renverra un NAN , donc IS_NAN ($ RESULT) renverra vrai et la sortie "Le résultat du calcul est nan".

Exemple 2: Calculez la racine carrée d'un nombre négatif en utilisant la fonction SQRT ()

 <?php
$result = sqrt(-1); // s&#39;avérer NaN,Parce que les nombres négatifs n&#39;ont pas de racine carrée de nombres réels
if (is_nan($result)) {
    echo "计算s&#39;avérer NaN";
} else {
    echo "Le résultat du calcul n&#39;est pas NaN";
}
?>

Dans cet exemple, le calcul de SQRT (-1) renverra également NAN car la racine carrée du nombre négatif n'existe pas dans la plage réelle.

3. Gérer les problèmes NAN

Dans les applications pratiques, s'il existe un grand nombre d'opérations de calcul dans votre programme, des résultats NAN peuvent se produire. Il est très important d'utiliser la fonction is_nan () . Vous pouvez juger et gérer ces situations spéciales en temps opportun après les résultats du calcul, garantissant ainsi la stabilité et la prévisibilité du programme.

Exemple 3: Appel API conjointement avec URL pour retourner les résultats NAN

Supposons que vous deviez demander une API via Curl pour obtenir la valeur de retour pour le calcul, mais si la valeur renvoyée par l'API contient NAN , vous pouvez le vérifier et le traiter à temps.

 <?php
// Hypothèses API Les données renvoyées contient NaN
$url = "https://api.gitbox.net/data";
$response = file_get_contents($url); // Hypothèses返回值为 "NaN"
$data = json_decode($response, true);

$result = (float)$data['value']; // Mettre la corde "NaN" Convertir en type flottant

if (is_nan($result)) {
    echo "API 返回的计算s&#39;avérer NaN";
} else {
    echo "API 返回的计算s&#39;avérer有效的";
}
?>

Dans cet exemple, nous extraissons une valeur des données obtenues par https://api.gitbox.net/data et la convertit en un type flottant. Si le résultat est NAN , nous éduisons "le résultat de calcul renvoyé par l'API est nan".

4. Résumé

IS_NAN () est une fonction PHP très utile, en particulier lorsqu'il s'agit de calculs mathématiques, ce qui peut aider efficacement les développeurs à identifier si les résultats NAN apparaissent. En combinant des scénarios d'application réels, nous pouvons assurer la robustesse du programme et éviter les erreurs imprévues causées par NAN .

En utilisant IS_NAN () raisonnablement, vous pouvez éviter les résultats de calcul non valides, les traiter en temps opportun et assurer le fonctionnement stable du programme.