PHP 8.4.12 Released!

Operadores Aritméticos

Lembra-se da aritmética básica da escola? Estes operadores funcionam exatamente como aqueles.

Operadores Aritméticos
Exemplo Nome Resultado
+$a Identidade Conversão de $a para int ou float conforme apropriado.
-$a Negativação Oposto de $a.
$a + $b Adição Soma de $a e $b.
$a - $b Subtração Diferença entre $a e $b.
$a * $b Multiplicação Produto de $a e $b.
$a / $b Divisão Quociente de $a e $b.
$a % $b Resto Resto de $a dividido por $b.
$a ** $b Exponenciação Resultado de $a elevado à potência de $b.

O operador de divisão / retorna um valor float, a não ser que os dois operandos sejam int (ou strings numéricas que são convertidas para int) e o numerador seja um múltiplo do divisor, neste caso será retornado um valor inteiro. Para divisão de inteiros, consulte intdiv().

Operandos da operação de resto de divisão são convertidos para int antes do processamento. Para restos de divisão de números em ponto flutuante, veja fmod().

O resultado do operador de resto % tem o mesmo sinal do dividendo — ou seja, o resultado de $a % $b terá o mesmo sinal de $a. Exemplos:

Exemplo #1 O Operador de Resto

<?php
var_dump
(5 % 3);
var_dump(5 % -3);
var_dump(-5 % 3);
var_dump(-5 % -3);
?>

O exemplo acima produzirá:

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

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês) 1 note

up
1
flip at example dot com
1 day 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