如何使用PHP检查数字是否为绝对整数


How to check if a number is an absolute integer using PHP?

我需要检查一个数字是否是绝对整数。

我似乎很容易将数字转换为绝对abs( intval( $_POST['number'] ) );,但不知道如何检查:

// pseudo code
if ( is_asbint( $_POST['number'] ) ) {
   echo 'yay';
}

有很多逻辑方法可以检查这一点,但有一个特定的函数-ctype_digit()-恰好执行您想要的
可能值得注意的是,我说"发生了"answers"你想要的"有两个具体原因:

  1. ctype_digit()用于检查字符串值(它不适用于实际为整数类型的值)是否完全由数字字符组成,这意味着它不接受减号/短划线
  2. 任何$_POST值(不包括数组)都保证是字符串,除非您在代码中对其进行了修改-用户输入始终以字符串形式出现。。。你在这里只是把它称为一个"整数"