Documentación offline PHP master

BcMath\Number::sub

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

BcMath\Number::sub

Sustrae un número de precisión arbitraria

Descripción#

public BcMath\Number::sub(BcMath\Number $num, [int $scale]): BcMath\Number
```php

Sustrae `num` de `$this`.

## Parámetros

`num`  
El valor a sustraer.

## Valores devueltos

Devuelve el resultado de la sustracción como un nuevo objeto `BcMath\Number`.

Cuando el BcMath\Number::scale del resultado se define automáticamente, se utiliza el mayor BcMath\Number::scale de los dos números utilizados para la sustracción.

## Ejemplos

Ejemplo de BcMath\Number::sub cuando `scale` no está especificado
sub(new BcMath\Number('2.34567')); $ret2 = $number->sub('-3.456'); $ret3 = $number->sub(7); var_dump($number, $ret1, $ret2, $ret3); ?>
El ejemplo anterior mostrará:

    object(BcMath\Number)#1 (2) {
      ["value"]=>
      string(5) "1.234"
      ["scale"]=>
      int(3)
    }
    object(BcMath\Number)#3 (2) {
      ["value"]=>
      string(8) "-1.11167"
      ["scale"]=>
      int(5)
    }
    object(BcMath\Number)#2 (2) {
      ["value"]=>
      string(5) "4.690"
      ["scale"]=>
      int(3)
    }
    object(BcMath\Number)#4 (2) {
      ["value"]=>
      string(6) "-5.766"
      ["scale"]=>
      int(3)
    }

Ejemplo de BcMath\Number::sub especificando `scale` explícitamente
sub(new BcMath\Number('2.34567'), 1); $ret2 = $number->sub('-3.456', 10); $ret3 = $number->sub(7, 0); var_dump($number, $ret1, $ret2, $ret3); ?>

```php

El ejemplo anterior mostrará:

object(BcMath\Number)#1 (2) {
  ["value"]=>
  string(5) "1.234"
  ["scale"]=>
  int(3)
}
object(BcMath\Number)#3 (2) {
  ["value"]=>
  string(4) "-1.1"
  ["scale"]=>
  int(1)
}
object(BcMath\Number)#2 (2) {
  ["value"]=>
  string(12) "4.6900000000"
  ["scale"]=>
  int(10)
}
object(BcMath\Number)#4 (2) {
  ["value"]=>
  string(2) "-5"
  ["scale"]=>
  int(0)
}

Véase también#

bcsub

BcMath\Number::add