is_infinite

関数の概要

PHPの is_infinite 関数は、指定した数値が「無限大(Infinity)」かどうかを判定するための関数です。数学的な操作や数値の計算結果が無限大になるケース(例えば、ゼロ除算の結果など)を検出したいときに利用します。

パラメータの説明

  • float $val — 判定対象となる数値を指定します。整数型や浮動小数点数型の値を渡せます。

戻り値

引数で渡した値が正の無限大または負の無限大の場合は true を返します。それ以外の値の場合は false を返します。

使用例

例1: 正の無限大を判定する

<?php
$value = log(0); // -INF(負の無限大)になるケースですが、例として
var_dump(is_infinite(INF));   // 出力: bool(true)
?>

ここでは直接無限大の定数 INF を使い、それが無限大であることを判定しています。

例2: 負の無限大を判定する

<?php
$negative_infinite = -INF;
var_dump(is_infinite($negative_infinite)); // 出力: bool(true)
?>

負の無限大も無限大として判定されることがわかります。

例3: 無限大ではない値を判定する

<?php
$value = 1000;
var_dump(is_infinite($value)); // 出力: bool(false)

$value = 1 / 0; // 警告が発生しますが
var_dump(is_infinite($value)); // 出力: bool(true)
?>

通常の数値や演算結果が無限大でない値では false が返り、無限大の演算結果では true が返ります。

関連する関数

  • is_nan — 数値が「NaN(Not a Number)」かどうかを判定します。
  • is_finite — 数値が有限かどうかを判定します。
  • floatval — 値を浮動小数点数に変換します。

まとめ

is_infinite 関数は、計算やデータ処理の中で値が「無限大」かどうかを簡単に判定できる便利な関数です。特に数値の異常値チェックや例外処理の一環として使うことで、予期せぬ無限大の影響を抑えることができます。PHPで数値操作をする際には覚えておきたい基本の関数の一つです。