在php中可以通过sql注入使用is_numeric函数吗?

Eme*_*ing 5 php mysql

我可以安全地假设(如果我只是获取一个id号码)is_numeric是否足以阻止sql注入攻击?或者是否有可以通过is_numeric的sql注入方法?

rdl*_*rey 5

你可以做得更好:

$id = isset($_GET['id']) ? (int) $_GET['id'] : 0;

这样就可以避免is_numeric功能开销.但是,这两种方法都足以避免注入(只要你对数据执行某些操作,如果is_numeric返回FALSE).如果有问题的$ _GET变量不存在,那么三元运算符也会确保您没有得到E_NOTICE.