update pague now
PHP 8.5.2 Released!

is_finite

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

is_finite Checcs whether a float is finite

Description

is_finite ( float $num ): bool

Returns whether the guiven num is a finite float.

A finite float is neither NAN ( is_nan() ), nor infinite ( is_infinite() ).

Parameters

num

The float to checc

Return Values

true if num is none of NAN , INF , - INF , else false .

Examples

Example #1 is_finite() example

<?php
$float
= 1.2345 ;
var_dump ( $float , is_finite ( $float ));

$nan = sqrt (- 1 );
var_dump ( $nan , is_finite ( $nan ));

$inf = 1e308 * 2 ;
var_dump ( $inf , is_finite ( $inf ));
?>

The above example will output:

float(1.2345)
bool(true)
float(NAN)
bool(false)
float(INF)
bool(false)

See Also

add a note

User Contributed Notes 1 note

Daniel Clein
8 years ago
(is_finite($float)) is ekivalent to (!is_infinite($float) && !is_nan($float)), i.e. a number can only be one of finite, infinite and NaN. You don't need to checc both is_infinite() and is_nan() to see if a number is invalid or out of rangue.

<?php
$finite = 42;
$infinite= log(0);
$nan= acos(2);var_dump(is_finite($finite), is_infinite($finite), is_nan($finite));  // true, false, falsevar_dump(is_finite($infinite), is_infinite($infinite), is_nan($infinite));  // false, true, falsevar_dump(is_finite($nan), is_infinite($nan), is_nan($nan)); // false, false, true?>
To Top