bcmul

Multiply two arbitrary precision numbers

&reftitle.description; `string` `bcmul` `string` `num1` `string` `num2` ``int``null```scale`&null;

Multiply `num1` by `num2`.

&reftitle.returnvalues;

Returns the result as a string.

&reftitle.changelog;

&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.

&reftitle.examples;

### `bcmul` example

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

&reftitle.notes;

Prior to 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 the `scale`. For example:

#### `bcmul` scale example

    <?php
    echo bcmul('5', '2', 2);     // prints "10", not "10.00"
    ?>

&reftitle.seealso;

- `bcdiv`
- `BcMath\Number::mul`