POSTデータの数値判定
数値(小数は省く)かどうかを判定したい場合
ctype_digit()を使う。
<?php echo ctype_digit('1.5') ? 'OK' : 'NG'; // NG echo ctype_digit('1.0') ? 'OK' : 'NG'; // NG echo ctype_digit('1') ? 'OK' : 'NG'; // OK echo ctype_digit('-1') ? 'OK' : 'NG'; // NG echo ctype_digit('01') ? 'OK' : 'NG'; // OK echo ctype_digit(1) ? 'OK' : 'NG'; // NG
フォームからの入力データは常にstring型になる為、is_int()では判定できない。
また、is_numeric()では小数が含まれる。
小数を含んでも良い場合はis_numeric()を使う。