(PHP 4 >= 4.2.0, PHP 5)
is_infinite — Prüft ob ein Wert unendlich ist
Die Funktion prüft ob ein Wert unendlich, oder besser nicht-endlich ist. Als nicht endlich gelten dabei Ergebnisse von Berechnungen wie log(0) ebenso wie Werte, die schlicht nur zu groß sind, um noch mit dem float Typ der jeweiligen Plattform erfasst zu werden. Es wird dabei nicht zwischen positiv unendlich und negativ unendlich unterschieden.
Der zu prüfende Wert
TRUE wenn val nicht endlich ist, sonst FALSE.
Actually any string ending in INF is more appropriate than any string beginning with INF. Since negative infinity evaluates to "-INF" but it is still infinite. However in either case the STRING "INF" is not infinite, only a float that converts to "INF" or "-INF" is infinite.
A more appropriate function might be:
<?php
if (!is_defined('is_infinite')) { function is_infinite($val) {
return (is_float($val) and ("$val"=='INF' or "$val"=='-INF'));
} }
?>
* However the above function is untested.
@ david,
That will return true for any string ending with "INF".
I think substr("$value",0,3) would be more appropriate.
If you have PHP lower than 4.2 you can simulate the behaviour:
function is_infinite($value) {
return (substr("$value",-3) == "INF");
}
(tested on php 4.1.2)