W3docs

fmod()

Découvrez la fonction fmod() en PHP, utilisée pour obtenir le reste d'une division entre deux nombres flottants.

Aujourd'hui, nous allons aborder la fonction fmod() en PHP. Cette fonction est utilisée pour obtenir le reste d'une opération de division entre deux nombres.

Qu'est-ce que la fonction fmod() ?

La fonction fmod() en PHP est une fonction intégrée qui permet d'obtenir le reste d'une opération de division entre deux nombres. La fonction prend deux nombres en entrée et retourne le reste de la division sous forme de nombre flottant.

Syntaxe et paramètres

fmod(float $num1, float $num2): float
  • $num1 : Le dividende.
  • $num2 : Le diviseur.

Valeur de retour : Retourne le reste flottant de $num1 / $num2. Si $num2 vaut 0, la fonction retourne NAN.

Comment utiliser la fonction fmod()

Utiliser la fonction fmod() en PHP est très simple. Voici un exemple d'utilisation de cette fonction :

php— editable, runs on the server

Dans cet exemple, nous définissons deux nombres comme variables. Nous appelons ensuite la fonction fmod() avec ces deux nombres en paramètres pour obtenir le reste de la division. Enfin, nous affichons le reste à l'écran. Le résultat exact est 1.

Travailler avec les décimales

Parce que fmod() conserve la partie flottante, c'est le bon outil lorsque les opérandes ne sont pas des nombres entiers. L'opérateur % les tronquerait silencieusement en entiers au préalable et donnerait un résultat trompeur.

<?php
echo fmod(7.5, 2);   // 1.5 — the leftover after fitting 2 into 7.5 three times
echo "\n";
echo 7.5 % 2;        // 1   — operands are cast to int (7 % 2), losing the decimal
?>

Comparaison avec l'opérateur %

Bien que l'opérateur % calcule également des restes, il ne fonctionne qu'avec des entiers. La fonction fmod() fonctionne aussi bien avec des entiers qu'avec des nombres flottants, ce qui la rend plus polyvalente pour les calculs mathématiques impliquant des décimales. Si vous avez réellement besoin d'une division entière, utilisez intdiv() pour le quotient et % pour le reste.

Cas particuliers

  • Opérandes négatifs : fmod() conserve le signe du dividende. Par exemple, fmod(-5, 2) retourne -1.
  • Division par zéro : Si le diviseur est 0, fmod() retourne NAN (Not a Number) au lieu de générer une erreur. Vérifiez ce cas avec is_nan() avant d'utiliser le résultat.

Une utilisation pratique courante consiste à encadrer une valeur dans une plage — par exemple, normaliser un angle vers 0–360 degrés :

<?php
$angle = 725;
echo fmod($angle, 360); // 5
?>

Si vous devez arrondir le résultat ensuite, utilisez round(), floor() ou ceil().

Conclusion

La fonction fmod() en PHP est un outil utile pour tout développeur PHP travaillant avec des opérations de division. En utilisant cette fonction, vous pouvez obtenir le reste d'une division entre deux nombres, ce qui peut s'avérer utile dans une grande variété d'applications. Nous espérons que ce guide vous a aidé à comprendre comment utiliser la fonction fmod() dans votre code PHP. Elle est particulièrement pratique pour des tâches comme les calculs temporels, l'indexation cyclique de tableaux et la gestion des restes décimaux là où l'opérateur % est insuffisant.

Pratique

Pratique
Quel est le rôle de la fonction fmod() en PHP ?
Quel est le rôle de la fonction fmod() en PHP ?
Was this page helpful?