我正在以这种方式过滤用户输入
$id= intval($_REQUEST['id']);
我只接受$id
中的整数。
还有什么我可以使用它来使它更安全吗?
谢谢!
答案 0 :(得分:1)
您可以使用filter_var
<?php
$var = filter_var('0755', FILTER_VALIDATE_INT);
?>
漂亮的是你可以做更复杂的验证(最小长度,默认值等),查看php.net的filter_var页面。
答案 1 :(得分:1)
如果您使用的是最新的PHP版本,则可以使用filter extension验证您的输入。
答案 2 :(得分:0)
只是重复你的问题:
我正在以这种方式过滤用户输入 $ id = intval($ _ REQUEST ['id']); 我只接受$ id中的整数。 还有什么我可以使用它来使它更安全吗?
我认为您可以使用ctype_digit($ id)执行过滤器True:False;
您只接受$ id中的整数,什么是整数:整数是可以在没有小数或小数分量的情况下写入的数字。例如,21,4和-2048是整数; 9.75,5½和√2不是整数。整数集是实数的一个子集,由自然数(1,2,3,...),零(0)和自然数的负数(-1,-2,-3)组成。 ,...)。 &GT;采取维基百科的形式