(PHP 4, PHP 5, PHP 7, PHP 8)
bcmod — Obtém o resto de uma divisão com precisão arbitrária
Obtém o resto da divisão de num1 por
num2.
O resultado tem o mesmo sinal de num1.
num1O operando da esquerda, como uma string.
num2O operando da direita, como uma string.
scalenull, será usada a escala padrão definida com bcscale(),
ou será usado o valor da diretiva INI
bcmath.scale.
Retorna o resto como uma string.
Esta função lança uma exceção ValueError nos seguintes casos:
num1 ou num2
não for uma string numérica BCMath bem formada.
scale estiver fora do intervalo válido.
Esta função lança uma exceção DivisionByZeroError
se num2 for igual a 0.
| Versão | Descrição |
|---|---|
| 8.0.0 |
scale pode ser null.
|
| 8.0.0 |
Dividir por 0 agora lança uma exceção DivisionByZeroError ao invés de retornar null.
|
| 7.2.0 |
num1 e num2 não são
mais truncados para inteiro, de forma que o comportamento de
bcmod() é o mesmo de fmod() ao invés do
operador %.
|
| 7.2.0 |
O parâmetro scale foi adicionado.
|
Exemplo #1 Exemplo de bcmod()
<?php
bcscale(0);
echo bcmod( '5', '3'); // 2
echo bcmod( '5', '-3'); // 2
echo bcmod('-5', '3'); // -2
echo bcmod('-5', '-3'); // -2
?>Exemplo #2 Exemplo de bcmod() com decimais
<?php
bcscale(1);
echo bcmod('5.7', '1.3'); // 0.5 no PHP 7.2.0; anteriormente 0
?>