下载地址:http://htmlpurifier.org/download
在编程开发时安全问题是及其重要的,对于用户提交的数据要进行过滤,XSS就是需要重视的一点,先说一下什么是XSS,简单来说就是用户提交数据(例如发 表评论,发表日志)时往Web页面里插入恶意javascript代码例如死循环,疯狂的alert,这还不算还可能会修改页面页面上的html元素(例 如登录表单的action),这样当用户浏览该页之时,嵌入其中Web里面的代码会被执行,从而达到用户的特殊目的。
HTML Purifier是基于php 5所编写的HTML过滤器,支持自定义过滤规则,还可以把不标准的HTML转换为标准的HTML。
function HtmlPurifier($data){
require_once "__STATIC__/plugin/htmlpurifier/linrary/HTMLPurifier.auto.php";
$config = HTMLPurifier_Config::createDefault();
//设置保留标签
$config->set('Core.Encoding','UTF-8');
$config->set('HTML.Allowed','div,b,strong,i,em,a[href|title],ul,ol,lo,p[style],br,span[style],img[width|height|alt|src]');
$config-set('CSS.AllowedProperties','font,font-size,font-weight,font-style,font-family,text-decoration,padding-left,color,background-color,text-align');
$config->set('HTML.TargetBlank',TRUE);
$obj = new HTMLPurifier($config);
//执行过滤
return $obj->purify($data);
}
详细过滤参看官方说明:http://htmlpurifier.org/live/smoketests/xssAttacks.php