BcMath\Number::compare

(PHP 8 >= 8.4.0)

BcMath\Number::compareCompares two arbitrary precision numbers

Açıklama

public BcMath\Number::compare(BcMath\Number|string|int $num, ?int $scale = null): int

Compare two arbitrary precision numbers. This method behaves similar to the spaceship operator.

Bağımsız Değişkenler

num
The value to be compared to.
scale
Specify the scale to use for comparison. If null, all digits are used in the comparison.

Dönen Değerler

Returns 0 if the two numbers are equal, 1 if $this is greater than num, -1 otherwise.

Hatalar/İstisnalar

This method throws a ValueError in the following cases:

  • num is string and not a well-formed BCMath numeric string
  • scale is outside the valid range

Örnekler

Örnek 1 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),
);
?>

Yukarıdaki örneğin çıktısı:

int(0)
int(0)
int(-1)
int(1)

Örnek 2 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),
);
?>

Yukarıdaki örneğin çıktısı:

int(0)
int(-1)
int(1)
int(0)

Ayrıca Bakınız

  • bccomp() - İki keyfi duyarlıklı sayıyı karşılaştırır
add a note

User Contributed Notes

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