A classe BcMath\Number

(PHP 8 >= 8.4.0)

Introdução

Uma classe para número de precisão arbitrária. Estes objetos suportam sobrecarga de operadores aritméticos e comparativos.

Nota: Esta classe não é afetada pela diretiva INI bcmath.scale definida no php.ini.

Nota: O comportamento de um operador sobrecarregado é o mesmo que especificar null para o parâmetro scale no método correspondente.

Resumo da classe

final readonly class BcMath\Number implements Stringable {
/* Propriedades */
public string $value;
public int $scale;
/* Métodos */
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
}

Propriedades

value
Uma representação string de um número de precisão arbitrária.
scale
O valor de escala atualmente definido no objeto. Para objetos resultantes de cálculos, este valore é computado e definido automaticamente, a menos que o parâmetro scale tenha sido definido no método de cálculo.

Índice

adicione uma nota

Notas Enviadas por Usuários (em inglês) 1 note

up
0
harl at gmail dot com
2 days ago
BcMath\Number is one of those classes that overloads boolean casting.
If $z = new BcMath\Number(0) then $z is considered falsy (and hence, for example, empty($z)==true) even though it is a genuine Number object.
To Top