PHPでは、IS_INTとIS_NUMERICは、変数の種類またはコンテンツを判断するために使用される2つの関数ですが、目的と判断の論理は大きく異なります。
」エコー 「IS_INT関数は、変数が整数型であるかどうかを判断するために使用されます。変数自体のデータ型が整数である場合にのみ、関数はtrueを返します。変数の値が整数のように見えますが、型は整数ではありません
。エコー」\ $ a = 123; var_dump(is_int(\ $ a)); //出力:bool(true) \ $ b = '123'; var_dump(is_int(\ $ b)); //出力:bool(false)" ;エコー 「
IS_NUMERIC関数は、変数の値が数値または数値の文字列であるかどうかを判断するために使用されます。整数と浮動小数点数だけでなく、数値の文字列も認識できます。
」エコー」\ $ a = 123; var_dump(is_numeric(\ $ a)); //出力:bool(true) \ $ b = '123'; var_dump(is_numeric(\ $ b)); //出力:bool(true) \ $ c = '12 .3 '; var_dump(is_numeric(\ $ c)); //出力:bool(true) \ $ d = 'abc'; var_dump(is_numeric(\ $ d)); //出力:bool(false)" ;エコー 「
要するに、IS_INTは厳格なタイプの判断であり、IS_Numericはゆるい価値判断です。使用する関数を選択することは、タイプとデータソースの厳格さの要件に基づいて決定する必要があります。
」 ?>