(PHP 4, PHP 5, PHP 7, PHP 8)
bcmul — Multiplica dois números de precisão arbitrária
num1
O operando da esquerda, como uma string.
num2
O operando da direita, como uma string.
scale
null
o padrão será a escala definida com a função bcscale()
ou, em último caso, o valor da diretiva INI
bcmath.scale
.
Retorna o resultado 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.
Versão | Descrição |
---|---|
8.0.0 |
scale agora pode ser nulo.
|
7.3.0 | bcmul() agora retorna números com a escala solicitada. Formalmente o número retornado pode ter alguns zeros decimais omitidos. |
Exemplo #1 Exemplo de bcmul()
<?php
echo bcmul('1.34747474747', '35', 3); // 47.161
echo bcmul('2', '4'); // 8
?>
Nota:
Anteriormente ao PHP 7.3.0, bcmul() poderia retornar um número com menos dígitos após o ponto decimal em comparação ao que o parâmetro
scale
indicaria. Isto ocorre apenas quando o resultado não exige toda a precisão permitida pelo parâmetroscale
. Por exemplo:Exemplo #2 Exemplo de bcmul() com escala
<?php
echo bcmul('5', '2', 2); // Exibe "10", não "10.00"
?>