尝试preg_match

时间:2015-11-19 19:18:55

标签: php regex

我已经完成了这段代码:

preg_match('/[\"\'><\/\\\]/', $foo))

问题是,我不确定这是否只会查找以下特殊字符,还是我错过了?

< > " ' / \

同样的情况,但对于HTML输入,这是正确的吗?

<input ... pattern="[^<>/\x5C;'\x22]+" />

感谢您的回复。

1 个答案:

答案 0 :(得分:1)

如果您要测试这些字符是否存在,this should work

if (preg_match('/["\'><\/\\]/', $foo))) {
    ...
}

禁止这些字符的相应HTML模式would look like this

<input pattern="[^&quot;'></\\]*"/>

如果您尝试将这些字符与使用户输入安全插入数据库或HTML显示的概念相匹配,那么您将采用完全错误的方式。查看strip_tags()filter_var()和准备好的陈述。