我想要一个模式来创建一个“is_id()”函数来验证mysql查询之前的用户输入。多数只包含数字的模式,我的问题是避免浮点数:正则表达式(避免浮点数)
function is_id($id) {
$pattern = "/^[0-9]+/";
if(preg_match($pattern,$id)) {
echo "ok";
} else {
echo "error";
}
}
is_id(0) // error
is_id(-5) // error
is_id(-5.5) // error
is_id(1.5) // ok <-- THIS IS THE PROBLEM
is_id(10) // ok
is_id("5") // ok
is_id("string") // error
你错过了一个$。 – BoltClock 2011-02-11 19:56:06
这也是有效的,is_id(0)你有它显示//错误 – 2011-02-11 20:00:19
当然有一个函数来确定一个值是否看起来像一个数字;应该没有必要为此构造一个正则表达式。 – Ether 2011-02-11 20:03:46