Math 函数
在线手册:中文 英文
PHP手册

is_infinite

(PHP 4 >= 4.2.0, PHP 5)

is_infinite判断是否为无限值

说明

bool is_infinite ( float $val )

如果 val 为无穷大(正的或负的),例如 log(0) 的结果或者任何超出本平台的浮点数范围的值,则返回 TRUE

参见 is_finite()is_nan()


Math 函数
在线手册:中文 英文
PHP手册
PHP手册 - N: 判断是否为无限值

用户评论:

stangelanda at arrowquick dot com (28-Aug-2007 03:29)

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.

(21-Aug-2006 04:54)

@ david,

That will return true for any string ending with "INF".
I think substr("$value",0,3) would be more appropriate.

david(@t)nirvanis(d@t)org (31-Aug-2004 10:49)

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)