Add two arbitrary precision numbers

- « BC Math Functions

- bcceil »

- PHP Manual
- BC Math Functions
- Add two arbitrary precision numbers

# bcadd

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

bcadd — Add two arbitrary precision numbers

### Description

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

Sums `num1` and `num2`.

### Parameters

`num1`

  The left operand, as a string.

`num2`

  The right operand, as a string.

`scale`
  This parameter is used to set the number of digits after the decimal place in the result. If `null`, it will default to the default scale set with bcscale(), or fallback to the value of the `bcmath.scale` INI directive.

### Return Values

The sum of the two operands, as a string.

### Errors/Exceptions

This function throws a ValueError in the following cases:

- `num1` or `num2` is not a well-formed BCMath numeric string.
- `scale` is outside the valid range.

### Changelog

Version | Description
--- | ---
8.0.0 | `scale` is now nullable.

### Examples

Example #1 bcadd() example

    <?php

    $a = '1.234';
    $b = '5';

    echo bcadd($a, $b);     // 6
    echo bcadd($a, $b, 4);  // 6.2340

    ?>

### See Also

- bcsub() - Subtract one arbitrary precision number from another
- BcMath\Number::add() - Adds an arbitrary precision number