php[world] 2019 — 25 years of PHP

is_finite

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

is_finite値が有限の数値であるかどうかを判定する

説明

is_finite ( float $val ) : bool

val が このプラットフォーム上で有効な有限値であるかどうかを調べます。

パラメータ

val

調べる値。

返り値

val が このプラットフォーム上の PHP の float 型で有効な範囲内の数である場合に TRUE、 それ以外の場合に FALSE を返します。

参考

  • is_infinite() - 値が無限大であるかどうかを判定する
  • is_nan() - 値が数値でないかどうかを判定する

add a note add a note

User Contributed Notes 1 note

up
4
Daniel Klein
2 years ago
(is_finite($float)) is equivalent 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 check both is_infinite() and is_nan() to see if a number is invalid or out of range.

<?php
$finite
= 42;
$infinite = log(0);
$nan = acos(2);

var_dump(is_finite($finite), is_infinite($finite), is_nan($finite));  // true, false, false
var_dump(is_finite($infinite), is_infinite($infinite), is_nan($infinite));  // false, true, false
var_dump(is_finite($nan), is_infinite($nan), is_nan($nan)); // false, false, true
?>
To Top