(PHP 8 >= 8.4.0)
BcMath\Number::compare — Comparar dos números de precisión arbitraria
Comparar dos números de precisión arbitraria. Este método se comporta de manera similar al operador spaceship.
numscalescale a utilizar para la comparación.
       Si null, todos los dígitos son utilizados en la comparación.
      
     
   Devuelve 0 si los dos números son iguales,
   1 si $this es mayor que num,
   de lo contrario -1.
  
Este método lanza una ValueError en los siguientes casos:
num es un string y no es una cadena numérica BCMath bien formadascale está fuera del rango válidoEjemplo #1 Ejemplo de BcMath\Number::compare() cuando scale no está especificado
<?php
$number = new BcMath\Number('1.234');
var_dump(
    $number->compare(new BcMath\Number('1.234')),
    $number->compare('1.23400'),
    $number->compare('1.23401'),
    $number->compare(1),
);
?>El ejemplo anterior mostrará:
int(0) int(0) int(-1) int(1)
Ejemplo #2 Ejemplo de BcMath\Number::compare() especificando scale explícitamente
<?php
$number = new BcMath\Number('1.234');
var_dump(
    $number->compare(new BcMath\Number('1.299'), 1),
    $number->compare('1.24', 2),
    $number->compare('1.22', 2),
    $number->compare(1, 0),
);
?>El ejemplo anterior mostrará:
int(0) int(-1) int(1) int(0)
