龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

用php过滤危险html代码的函数

时间:2011-12-21 12:52来源:未知 作者:admin 点击:
分享到:
用PHP过滤html里可能被利用来引入外部危险内容的代码。有些时候,需要让用户提交html内容,以便丰富用户发布的信息,当然,有些可能造成显示页面布局混乱的代码也在过滤范围内。

用PHP过滤html里可能被利用来引入外部危险内容的代码。有些时候,需要让用户提交html内容,以便丰富用户发布的信息,当然,有些可能造成显示页面布局混乱的代码也在过滤范围内。

折叠PHP Code复制内容到剪贴板
  1. //用户发布的html,过滤危险代码    
  2. function uh($str)    
  3. {    
  4. $farr = array(    
  5. "/\s+/"//过滤多余的空白    
  6. "/<(\/?)(scrīpt|i?frame|style|html|body|title|link|meta|\?|\%)([^>]*?)>/isU"//过滤 <scrīpt 等可能引入恶意内容或恶意改变显示布局的代码,如果不需要插入flash等,还可以加入<object的过滤    
  7. "/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU"//过滤javascrīpt的on事件    
  8.   
  9. );    
  10. $tarr = array(    
  11. " ",    
  12. "<\\1\\2\\3>"//如果要直接清除不安全的标签,这里可以留空    
  13. "\\1\\2",    
  14. );    
  15.   
  16. $str = preg_replace( $farr,$tarr,$str);    
  17. return $str;    


精彩图集

赞助商链接