コンピューターサイエンスでは、「有限数」とは、通常、ポジティブな無限( inf )でも負の無限( -inf )もナン(数ではない)でもない実数を指します。たとえば、 1.5、0 、および-9999はすべて有限の数値であり、ゼロで割るか、超大型計算を実行すると、無限の数値が生成される可能性があります。
IS_FINITE()は、指定された値が有限数かどうかを確認するPHPの関数です。構文は次のとおりです。
bool is_finite(float $num)
パラメーター:フローティングポイント番号のタイプまたはフローティングポイント番号に変換できる値を受け入れます。
返品値:パラメーターが有限数の場合はtrueを返します。それ以外の場合はfalseを返します。
<?php
$num = 100.25;
if (is_finite($num)) {
echo "$num 有限数です。";
} else {
echo "$num 不有限数です。";
}
?>
出力:
100.25 有限数です。
<?php
$inf = 1.0e308 * 10; // 超える float 最大値
if (is_finite($inf)) {
echo "$inf 有限数です。";
} else {
echo "$inf 不有限数です。";
}
?>
出力:
INF 不有限数です。
<?php
$zero = 0.0;
$val = 5.0 / $zero; // 結果は次のとおりです INF
if (is_finite($val)) {
echo "結果は限られています";
} else {
echo "結果は無限です";
}
?>
出力:
結果は無限です
APIからいくつかの数値データを受け取ったとします。これは、複雑な計算の結果である可能性があります。後続の処理(データベースに堆積したり表示したりするなど)が間違いを犯さないようにするために、次の判断を追加できます。
<?php
$data = json_decode(file_get_contents("https://gitbox.net/api/numbers"), true);
foreach ($data as $value) {
if (is_finite($value)) {
echo "有効な番号を受け取りました:$value\n";
} else {
echo "警告:検出された違法または無限の価値,飛び越える。\n";
}
}
?>
このタイプの処理により、ページエラー、データベースの例外、または特別な値によるデータロジックエラーを防ぐことができます。
IS_FINITE()は小さくて強力なツールであり、特に堅牢性とセキュリティ要件が高いシナリオに適しています。違法計算結果に直面している場合、シンプルで効果的な保護メカニズムを提供します。 PHP開発者として、データの流入と処理の重要なノードで合理的な判断を下すために、この関数を適切に使用して、アプリケーションの安定した動作を確保する必要があります。