PHPeste 2025 - Parnaiba-PI

Les opérateurs arithmétiques

Vous rappelez-vous des opérations élémentaires apprises à l'école ? Les opérateurs arithmétiques fonctionnent comme elles.

Opérations élémentaires
Exemple Nom Résultat
+$a Identité Conversion de $a vers int ou float, selon le plus approprié.
-$a Négation Opposé de $a.
$a + $b Addition Somme de $a et $b.
$a - $b Soustraction Différence de $a et $b.
$a * $b Multiplication Produit de $a et $b.
$a / $b Division Quotient de $a et $b.
$a % $b Modulus Reste de $a divisé par $b.
$a ** $b Exponentiation Résultat de l'élévation de $a à la puissance $b.

L'opérateur de division / retourne une valeur float à moins que les deux opérandes ne soient de type int (ou chaînes numériques qui sont converties en int) et que le numérateur soit un multiple du diviseur, auquel cas une valeur entière sera retournée. Pour la division entière, voir intdiv(). intdiv().

Les opérandes du modulo sont converties en int avant exécution. Pour le modulo sur des nombres décimaux, voir fmod().

Le résultat de l'opération modulo % a le même signe que le premier opérande, ansi le résultat de $a % $b aura le signe de $a. Par exemple:

Exemple #1 L'Opérateur Modulo

<?php

var_dump
(5 % 3);
var_dump(5 % -3);
var_dump(-5 % 3);
var_dump(-5 % -3);

?>

L'exemple ci-dessus va afficher :

int(2)
int(2)
int(-2)
int(-2)

add a note

User Contributed Notes 1 note

up
0
flip at example dot com
14 hours ago
The modulo % does not work on Floats, use fmod()
https://www.php.net/manual/en/function.fmod.php

php > echo (1.1 % 1);
0

php > echo fmod(1.1, 1);
0.1

Could be a discussion on if it should, but at least at the moment it doesn't.

https://en.wikipedia.org/wiki/Modulo
has a list of languages that do/don't support modulo on floats
To Top