bcmul

(PHP 4, PHP 5, PHP 7, PHP 8)

bcmulMultiplicar dois números de precisão arbitrária

Descrição

bcmul(string $num1, string $num2, ?int $scale = null): string

Multiplica o num1 pelo num2.

Parâmetros

num1

O operando da esquerda, como uma string.

num2

O operando da direita, como uma string.

scale

Este parâmetro opcional é usado para definir o número de dígitos após a casa decimal do resultado. Se omitido, o padrão será a escala definida globalmente com a função bcscale() ou, em último caso, 0 se a escala não tiver sido definida.

Valor Retornado

Retorna o resultado como uma string.

Registro de Alterações

Versão Descrição
8.0.0 scale agora pode ser null.
7.3.0 bcmul() agora retorna números com a escala solicitada. Formalmente o número retornado pode ter alguns zeros decimais omitidos.

Exemplos

Example #1 Exemplo da bcmul()

<?php
echo bcmul('1.34747474747', '35', 3); // 47.161
echo bcmul('2', '4'); // 8
?>

Notas

Note:

Anteriormente ao PHP 7.3.0 bcmul() podia retornar um número com menos dígitos após o ponto decimal que o parâmetro scale indicaria. Isto ocorre apenas quando o resultado não exigia toda a precisão permitida pelo parâmetro scale. Por exemplo:

Example #2 Exemplo de bcmul() com scale

<?php
echo bcmul('5', '2', 2);     // Imprime "10", não "10.00"
?>

Veja Também

  • bcdiv() - Dividir dois números de precisão arbitrária