(PHP 4, PHP 5, PHP 7, PHP 8)
bcmul — Multiply two arbitrary precision numbers
$num1
, string $num2
, ?int $scale
= null
): string
Multiply the num1
by the
num2
.
num1
The left operand, as a string.
num2
The right operand, as a string.
scale
This optional parameter is used to set the number
of digits after the decimal place in the result. If omitted, it will default to the scale set
globally with the bcscale() function, or fallback to 0
if
this has not been set.
Returns the result as a string.
Version | Description |
---|---|
8.0.0 |
scale is now nullable.
|
7.3.0 | bcmul() now returns numbers with the requested scale. Formerly, the returned numbers may have omitted trailing decimal zeroes. |
Example #1 bcmul() example
<?php
echo bcmul('1.34747474747', '35', 3); // 47.161
echo bcmul('2', '4'); // 8
?>
Note:
Before PHP 7.3.0 bcmul() may return a result with fewer digits after the decimal point than the
scale
parameter would indicate. This only occurs when the result doesn't require all of the precision allowed by thescale
. For example:Example #2 bcmul() scale example
<?php
echo bcmul('5', '2', 2); // prints "10", not "10.00"
?>