Maison > développement back-end > Problème PHP > Que dois-je faire si php rencontre un nombre qui n'est pas divisible ?

Que dois-je faire si php rencontre un nombre qui n'est pas divisible ?

PHPz
Libérer: 2023-04-05 15:08:02
original
802 Les gens l'ont consulté

PHP est un langage de programmation puissant largement utilisé dans le développement Web et dans diverses autres applications. Bien que la conception et la mise en œuvre du langage PHP soient assez matures, vous rencontrerez toujours divers problèmes lors de son utilisation. Par exemple, les nombres qui ne sont pas divisibles par PHP peuvent être un problème courant. Vous pouvez utiliser le code suivant pour résoudre ce problème.

L'opérateur de division entière de PHP est « / ». Par exemple, $a/$b renverra le résultat de $a divisé par $b. Cet opérateur renvoie un nombre à virgule flottante et non un entier. Si vous avez besoin d'obtenir un entier, vous pouvez utiliser l'opérateur de division entière de PHP "". Par exemple, $a$b renverra la partie entière de $a divisée par $b.

Cependant, nous devons parfois calculer le reste de $a/$b, et pour le moment, nous ne pouvons pas utiliser l'opérateur de division entière. Il existe deux façons de calculer le reste.

La première méthode consiste à utiliser l'opérateur modulo "%" de PHP. Par exemple, $a%$b renverra le reste de $a divisé par $b. Cependant, lorsque $b=0, l'opération modulo provoque une erreur car un nombre ne peut pas être divisé par zéro. De plus, l'opération modulo donnera également un résultat incorrect lorsque $a ou $b est un nombre à virgule flottante.

La deuxième méthode consiste à utiliser la fonction fmod() de PHP pour calculer le reste. Par exemple, fmod($a,$b) renverra le reste de $a divisé par $b. Contrairement à l'opérateur modulo, la fonction fmod() peut gérer correctement les nombres à virgule flottante et 0, et est également très stable lors du calcul de très grands nombres.

Ce qui suit est un exemple de code qui utilise la fonction fmod() pour calculer le reste de $a/$b :

function mod($a, $b) {
    $mod = fmod($a, $b);
    if($mod==0) {
        return 0;
    } elseif(($a<0 && $b>0) || ($a>0 && $b<0)) {
        return $mod+$b;
    } else {
        return $mod;
    }
}
Copier après la connexion

Cette fonction acceptera deux paramètres $a et $b, renverra le reste de $a/$b , et peut être correct pour gérer diverses situations. Si le reste est 0, la fonction retournera directement 0. Si $a et $b ont des signes différents, la fonction renverra normalement un reste négatif au lieu du reste positif par défaut de PHP. La fonction peut également gérer de très grands nombres et renvoyer un reste exact plutôt qu'une approximation.

Lors de la programmation avec PHP, vous rencontrerez divers problèmes, tels que des nombres qui ne peuvent pas être divisés par PHP. Cependant, tant que vous apprenez à utiliser certaines techniques et fonctions, vous pouvez résoudre ces problèmes. Lorsque vous écrivez du code PHP, faites attention à la gestion de diverses situations et n’ignorez aucune situation.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal