可能重复:
php验证整数
目前我使用的方法是:
- 使用
isset($val) && is_numeric($val)
验证输入 - 将其强制转换为
int
并将其传递给函数:DoSomething((int)$val);
所以我的问题是:这是最快、最实用的方法吗?如果我将值强制转换为int
,那么int
的范围是否足以满足mysql
数据库中的最大行数?
PHP提供了集成的基本过滤器&验证功能。
这个方法似乎是多余的。
验证或强制转换-不需要同时执行这两种操作。
这显然不是一个需要"最快"的地方。
快速浏览php手册页面,推送:
$foo = 5a;
settype($foo, "integer"); // $foo is now 5 (integer)
以及:/*检查字符串是否是一个在前面和/或后面可能有空格的整数,并隔离整数*/
$isInt=preg_match('/^'s*([0-9]+)'s*$/', $myString, $myInt);