php过滤恶意html字符

来源:互联网 发布:android编程软件 编辑:程序博客网 时间:2024/05/22 22:41
  1. <?php
  2. function filter($str)
  3. {
  4. $farr = array(
  5. "/\s+/",//过滤多余的空白
  6. "/<(\/?)(script|i?frame|style|html|body|title|link|meta|\?|\%)([^>]*?)>/isU",//过滤 script等恶意代码,还可以加入object的过滤flash
  7. "/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU",//过滤javascript的on事件
  8. );
  9. $tarr = array(
  10. " ",
  11. "<\\1\\2\\3>",//如果要直接清除不安全的标签,这里可以留空
  12. "\\1\\2",
  13. );
  14. $str = preg_replace( $farr,$tarr,$str);
  15. return $str;
  16. }
  17. //小小演示下
  18. echo filter("<script>alert('www.phpddt.com'></script>");
  19. ?>