国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 PHP 庫 其它類庫 htmlpurifierPHP過濾庫
htmlpurifierPHP過濾庫

require_once '/path/to/HTMLPurifier.auto.php';

根據(jù)ThinkPHP的規(guī)范,對于第三方擴(kuò)展,不符合ThinkPHP開發(fā)規(guī)范的,需要將HTMLPurifier放入到Library/Vendor目錄中。然后我們可以在方法中通過下面方法將HTMLPurifier.auto.php引入到框架程序中:

vendor('htmlpurifier.library.HTMLPurifier#auto');

不過這里我使用的ThinkPHP 3.2.1,發(fā)現(xiàn)這種方法只能使用在函數(shù)中,對于控制器類中這樣引入是無法正確識別的。也就是說,我們只能在common/function.php文件中引用。

創(chuàng)建HTMLPurifier對象并實現(xiàn)對富文本的過濾

$config = HTMLPurifier_Config::createDefault();
$purifier = new HTMLPurifier($config);
$clean_html = $purifier->purify($dirty_html);

如何對HTMLPurifer的過濾器進(jìn)行配置

要使用HTMLPurifier,重點還是在如何進(jìn)行配置。對于上面的程序,我們通過createDefault()方法創(chuàng)建了一個默認(rèn)的配置對象。我們?nèi)绻薷呐渲玫脑?,可以通過set方法來進(jìn)行配置設(shè)置,方法如下:

$config->set('config_object', value, a=null);

第一個參數(shù)就是需要配置的屬性,第二個參數(shù)就是屬性的值,第三個參數(shù)具體是做什么用的我也還沒有搞明白,不過一般都沒有用過,等有時間了再慢慢兒來研究研究。

HTMLPurifier的配置屬性可以通過其網(wǎng)站查詢到

配置屬性選擇

HTMLPurifier的配置文檔主要是兩級分類,大類分Attr(屬性)、HTML(html標(biāo)簽)、AutoFormat(自動格式)、CSS(css配置)、Output(輸出配置)……小類選擇通過大類名稱加.加小類名稱可以完成。

比如我要配置允許的html標(biāo)簽,比如說p標(biāo)簽和a標(biāo)簽,可以如下配置

$config->set('HTML.Allowed', 'p,a');

屬性值的選擇

在官方文檔中,點擊一個屬性后,可以看到對這個屬性的解釋,會告訴你這個屬性的值的類型(Type)是String、Int、Array、Boolen……

接著還會告訴你這個屬性的默認(rèn)值,比如是NULL還是true還是false等。這個值的格式就跟PHP的格式一樣的。

白名單過濾機制

HTMLPurifier使用了白名單過濾機制,只有被設(shè)置允許的才會通過檢驗。

基本過濾事例

a、過濾掉文本中的所有html標(biāo)簽

/**
 * 過濾掉所有html標(biāo)簽很簡單,原因則在白名單機制完成
 */
$config->set('HTML.Allowed', '');

b、保留超鏈接標(biāo)簽a及其href鏈接地址屬性,并自動添加target屬性值為’_blank’

$config->set('HTML.Allowed', 'a[href]');
$config->set('HTML.TargetBlank', true);

c、自動完成段落代碼并清除掉無用的空標(biāo)簽

// 讓文本自動添加段落標(biāo)簽,前提是必須允許P標(biāo)簽的使用
$config->set('HTML.Allowed', 'p');
$config->set('AutoFormat.AutoParagraph', true);
// 清除空標(biāo)簽
$config->set('AutoFormat.RemoveEmpty', true);
……


免責(zé)聲明

本站所有資源均由網(wǎng)友貢獻(xiàn)或各大下載網(wǎng)站轉(zhuǎn)載。請自行檢查軟件的完整性!本站所有資源僅供學(xué)習(xí)參考。請不要將它們用于商業(yè)目的。否則,一切后果由您負(fù)責(zé)!如有侵權(quán),請聯(lián)系我們刪除。聯(lián)系方式:admin@php.cn

相關(guān)文章

使用Muditup 3 JS庫進(jìn)行動畫過濾和分類 使用Muditup 3 JS庫進(jìn)行動畫過濾和分類

17 Feb 2025

MixItUp 3:基于 CSS 動畫的網(wǎng)頁元素篩選和排序利器 MixItUp 3 是一個強大的 JavaScript 庫,它利用 CSS 動畫實現(xiàn)網(wǎng)頁元素的篩選和排序,非常適合用于整理內(nèi)容豐富的網(wǎng)站,例如作品集、相冊和博客等。 MixItUp 3 的核心功能: 無依賴性: MixItUp 3 不依賴任何其他庫,使用方便。 CSS 動畫: 使用 CSS 動畫實現(xiàn)流暢的篩選和排序效果。 高度可定制: 提供豐富的配置選項,可以自定義動畫效果、添加自定義類名、創(chuàng)建自定義篩選和排序按鈕等等。 跨瀏覽器

如何通過thinkphp連接多數(shù)據(jù)庫 如何通過thinkphp連接多數(shù)據(jù)庫

15 Jun 2018

thinkphp連接多數(shù)據(jù)庫 配置文件中:return array( //數(shù)據(jù)庫配置信息 默認(rèn)連接這一個 'DB_TYPE' => 'mysql', // 數(shù)據(jù)庫類型 'DB_HOST' => '127.0.0.1', // 服務(wù)器地址 'DB_NAME' => 'test1', // 數(shù)據(jù)庫名 'DB_USER' => 'root', // 用戶名

通過過濾構(gòu)建角度數(shù)據(jù)網(wǎng)格 通過過濾構(gòu)建角度數(shù)據(jù)網(wǎng)格

18 Mar 2025

肯德·UI(Kendo UI)可以通過一個大型組件庫將其從基本想法轉(zhuǎn)變?yōu)槌墒斓膽?yīng)用程序。我們對100多個組成部分進(jìn)行了很好的交談

如何通過ThinkPHP鏈接數(shù)據(jù)庫 如何通過ThinkPHP鏈接數(shù)據(jù)庫

15 Jun 2018

在配置文件中做如下配置便可鏈接數(shù)據(jù)庫<?phpreturn array( //'配置項'=>'配置值' 'DB_TYPE' => 'mysql', // 數(shù)據(jù)庫類型 'DB_HOST' => 'localhost', // 服務(wù)器地址 'DB_NAME' => 's

如何使用 hbm2ddl.auto 通過 Hibernate 自動創(chuàng)建數(shù)據(jù)庫表? 如何使用 hbm2ddl.auto 通過 Hibernate 自動創(chuàng)建數(shù)據(jù)庫表?

15 Dec 2024

使用 Hibernate 自動創(chuàng)建/更新數(shù)據(jù)庫表根據(jù)實體類自動創(chuàng)建或更新數(shù)據(jù)庫表...

可以水平出色的過濾器 可以水平出色的過濾器

25 Feb 2025

本文演示了如何用Microsoft Excel中的列,行或水平過濾數(shù)據(jù)。它提供了有關(guān)過濾不同類型數(shù)據(jù)的全面說明,包括愛好(文本),預(yù)算(數(shù)字)以及名稱或描述(TE)

See all articles