我在我的琴弦上使用filter_var()
来消毒它们。
return filter_var($str, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_LOW, FILTER_FLAG_STRIP_HIGH, FILTER_FLAG_ENCODE_LOW, FILTER_FLAG_ENCODE_HIGH, FILTER_FLAG_ENCODE_AMP);
filter_var()
最多需要3个参数,但它提供了很多选项,我想要所有这些参数!
我该如何正确地做到这一点?这里的示例:http://php.net/manual/en/filter.filters.sanitize.php似乎一次不使用多个。
当然有人必须要删除ASCII< 32和ASCII> 127而不在某个时刻调用filter_var()
两次,对吧?它就像做FILTER_FLAG_STRIP_LOW& FILTER_FLAG_STRIP_HIGH?或者也许使用按位或?
答案 0 :(得分:4)
它们是位标志 - 如果要使用多个标志,则必须将它们按位或将它们转换为单个值:
filter_vars($str, FILTER_SANITIZE_STRING, flag1 | flag2 | .... | flagN)
^-------^---etc...