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 ("/") sempre retorna um valor com ponto flutuante, a não ser que os dois operandos sejam inteiros (ou strings que são convertidas para inteiros) e números inteiramente divisíveis, nesse caso um inteiro é retornado. Para divisão de inteiros, veja 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
echo (5 % 3)."\n"; // exibe 2
echo (5 % -3)."\n"; // exibe 2
echo (-5 % 3)."\n"; // exibe -2
echo (-5 % -3)."\n"; // exibe -2
?>