PHP 8.5.0 Alpha 1 available for testing

Voting

: max(zero, five)?
(Example: nine)

The Note You're Voting On

dePijd
15 years ago
This class ran through several unit tests and fixes all failures found in bugs.php.net

<?php
abstract class MyNumber {
public static function
isZero($number, $precision = 0.0000000001)
{
$precision = abs($precision);
return -
$precision < (float)$number && (float)$number < $precision;
}
public static function
isEqual($number1, $number2)
{
return
self::isZero($number1 - $number2);
}
public static function
fmod($number1, $number2)
{
$rest = fmod($number1, $number2);
if (
self::isEqual($rest, $number2)) {
return
0.0;
}
if (
mb_strpos($number1, ".") === false) {
$decimals1 = 0;
} else {
$decimals1 = mb_strlen($number1) - mb_strpos($number1, ".") - 1;
}
if (
mb_strpos($number2, ".") === false) {
$decimals2 = 0;
} else {
$decimals2 = mb_strlen($number2) - mb_strpos($number2, ".") - 1;
}
return (float)
round($rest, max($decimals1, $decimals2));
}
}
?>

<< Back to user notes page

To Top