BcMath\Number::compare
(PHP 8 >= 8.4.0)
Compares two arbitrary precision numbers
Description
Compare two arbitrary precision numbers. This method behaves similar to the spaceship operator.
Parameters
numThe value to be compared to.
scaleSpecify the
scaleto use for comparison. If null, all digits are used in the comparison.
Return Values
Returns 0 if the two numbers are equal, 1 if $this is greater than num, -1 otherwise.
Examples
BcMath\Number::compare example when scale is not specified
<?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),
);
?>The above example will output:
int(0)
int(0)
int(-1)
int(1)BcMath\Number::compare example of explicitly specifying scale
<?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),
);
?>The above example will output:
int(0)
int(-1)
int(1)
int(0)