过滤和清除int和float-我可以加零吗


Filtering and sanitizing ints and floats - Can I just add zero?

我使用的是PHP,我读过关于清理/过滤的各种帖子,对我如何保存和读取/表示数据感到满意。

但是。。。当涉及到数字数据时,我的筛选/清除删除了小数点。

作为一种解决方案,我可以不让服务器只对客户端数据进行计算,并将发送的值加零吗?这意味着,如果用户/客户端向服务器发送非数字(可能是一些sql注入字符串),他们的恶意将失败,因为我的字符串将导致零。

可接受还是不可接受?有人能原谅这件事的弱点吗?

我问是因为我试过使用

$str=filter_var( $str, FILTER_SANITIZE_NUMBER_FLOAT );

它去掉了小数点。通过加一个零,我可以确保保留小数点。

(提前感谢)

根据以上评论。。。给变量加零是可行的,也是可以接受的,尽管不是每个人都清楚。