API Platform Conference 2025

The BcMath\Number class

(PHP 8 >= 8.4.0)

Introduction

A class for an arbitrary precision number. These objects support overloaded arithmetic and comparison operators.

Note: This class is not affected by the bcmath.scale INI directive set in php.ini.

Note: The behavior of an overloaded operator is the same as specifying null for the scale parameter on the corresponding method.

Class synopsis

final readonly class BcMath\Number implements Stringable {
/* Properties */
public string $value;
public int $scale;
/* Methods */
public __construct(string|int $num)
public compare(BcMath\Number|string|int $num, ?int $scale = null): int
public divmod(BcMath\Number|string|int $num, ?int $scale = null): array
public pow(BcMath\Number|string|int $exponent, ?int $scale = null): BcMath\Number
public powmod(BcMath\Number|string|int $exponent, BcMath\Number|string|int $modulus, ?int $scale = null): BcMath\Number
public round(int $precision = 0, RoundingMode $mode = RoundingMode::HalfAwayFromZero): BcMath\Number
public __serialize(): array
public sqrt(?int $scale = null): BcMath\Number
public __toString(): string
public __unserialize(array $data): void
}

Properties

value
A string representation of an arbitrary precision number.
scale
The scale value currently set on the object. For objects resulting from calculations, this value is automatically computed and set, unless the scale parameter was set in the calculation method.

Table of Contents

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top