源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

浅析php插件 HTMLPurifier HTML解析器

  • 时间:2022-01-11 10:57 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:浅析php插件 HTMLPurifier HTML解析器
HTMLPurifier插件的使用 下载HTMLPurifier插件 HTMLPurifier插件有用的部分是 library [img]http://files.jb51.net/file_images/article/201307/201307011118394.jpg[/img] [b]使用HTMLPurifier library类库 第一种方式 [/b]
[url=http://htmlpurifier.org/live/configdoc/plain.html]http://htmlpurifier.org/live/configdoc/plain.html [/url][b]例子 [/b]
[u]复制代码[/u] 代码如下:
$config->set('HTML.AllowedElements', array('div'=>true, 'table'=>true, 'tr'=>true, 'td'=>true, 'br'=>true)); $config->set('HTML.Doctype', 'XHTML 1.0 Transitional')  //html文档类型(常设) $config->set('Core.Encoding', 'UTF-8')   //字符编码(常设)
[b]HTML允许的元素 [/b]div元素,table元素,tr元素,td元素,br元素 new HTMLPurifier对象
[u]复制代码[/u] 代码如下:
$purifier = new HTMLPurifier($config);
调用HTMLPurifier对象的purify方法
[u]复制代码[/u] 代码如下:
$puri_html = $purifier->purify($html);
[b]第二种方式 [/b]自定义一个类 HtmlPurifier.php
[u]复制代码[/u] 代码如下:
<?php require_once 'HTMLPurifier.includes.php'; require_once 'HTMLPurifier.autoload.php'; class Resume_HtmlPurifier implements Zend_Filter_Interface{  protected $_htmlPurifier = null;  public function __construct($options = null)  {   $config = HTMLPurifier_Config::createDefault();   $config->set('Code.Encoding', 'UTF-8');    $config->set('HTML.Doctype', 'XHTML 1.0 Transitional')   if(!is_null($options)){    foreach($options as $option){     $config->set($option[0], $option[1], $option[2]);    }   }   $this->_htmlPurifier = new HTMLPurifier($config);  }  public function filter($value)  {  return $this->_htmlPurifier->purify($value);  } } ?>
设置config信息 [b]例如: [/b]
[u]复制代码[/u] 代码如下:
$conf = array(  array('HTML.AllowedElements',            array(                      'div' => true,                      'table' => true,                      'tr' => true,                      'td' => true,                      'br' => true,                  ),                  false), //允许属性 div table tr td br元素          array('HTML.AllowedAttributes', array('class' => TRUE), false),  //允许属性 class          array('Attr.ForbiddenClasses', array('resume_p' => TRUE), false), //禁止classes如          array('AutoFormat.RemoveEmpty', true, false),    //去空格          array('AutoFormat.RemoveEmpty.RemoveNbsp', true, false),  //去nbsp          array('URI.Disable', true, false), );
[b]调用 [/b]
[u]复制代码[/u] 代码如下:
$p = new Resume_HtmlPurifier($conf); $puri_html = $p->filter($html);
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部