Lembra-se da aritmética básica da escola? Estes operadores funcionam exatamente como aqueles.
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:
<?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)