从输入中删除html标记的最佳方法是什么?
如何在验证输入时删除HTML标记
$this->form_validation->set_rules('description', 'Description', 'trim|xss_clean');
我是否需要为验证规则添加自定义回调方法?
根据这个,您可以直接将strip_tags添加到set_rules()
:
任何接受一个参数的本机PHP函数都可以用作规则,如htmlspecialchars,trim,MD5等.
所以它可能看起来像这样:
$this->form_validation->set_rules('description', 'Description', 'trim|xss_clean|strip_tags');
对应用程序输入进行一揽子过滤完全是假的.它会破坏潜在有效的输入,并且无法可靠地保护XSS.从XSS安全的唯一方法是在输出阶段正确地将您插入的每个文本字符串转义为HTML ,例如.使用htmlspecialchars
.
xss_clean
即使是非常低标准的"XSS保护"工具,CodeIgniter还是做了一套非常令人生畏和愚蠢的字符串修改工作.你不应该在任何情况下使用它.