PHP is_numeric或preg_match 0-9 验证
这对我来说不是一个大问题(据我所知),它更像是我感兴趣的东西。但是,使用 over(反之亦然)来验证用户输入值的主要区别(如果有)是什么。is_numeric
preg_match
示例一:
<?php
$id = $_GET['id'];
if (!preg_match('/^[0-9]*$/', $id)) {
// Error
} else {
// Continue
}
?>
示例二:
<?php
$id = $_GET['id'];
if (!is_numeric($id)) {
// Error
} else {
// Continue
}
?>
我假设两者都完全相同,但是是否有任何特定的差异可能会在以后以某种方式导致问题?有没有一种“最好的方式”或我没有看到的东西,使它们与众不同。