drupal6中使用drupal_html_to_text方法過濾替換html超文本代碼

   當我們使用drupal的後臺或者其他地方使用了FCKeditor等所見即所得插件後,得出的文本經常會帶有附加的html超文本代碼,有時候我們使用這個文本信息時不想讓某些html代碼的效果出現,但是又不能破壞原FCKeditor編輯後的代碼,drupal爲我們提供了一個很好的過濾替換html的方法:

 

drupal_html_to_text($string, $allowed_tags = NULL)

 

原文見:http://api.drupal.org/api/function/drupal_html_to_text/6

 

官方解釋:

      轉換成純文本的HTML字符串,維護結構的標記。對於想要將節點來當做郵件發送是很有用的,方法提供了以下標籤的合適替換:
<a> <em> <i> <strong> <b> <br> <p> <blockquote> <ul> <ol> <li> <dl> <dt> <dd> <h1> <h2> <h3> <h4> <h5> <h6> <hr>
(就是說以上的這些指定標籤都會被這個方法以其他的字符來替換,這些之外的字符會被去掉,替換的字符不會產生html效果,詳細可見看官方api的源代碼)

參數:
$string 需要處理的字符串.

$allowed_tags (可選) 如果提供了這個參數, 所提供的標籤將被過濾. 如果省略, 所有標籤將被過濾.


例:
//未過濾的效果
function test_index(){

    $str = '<p><B><FONT SIZE="5" COLOR="#FF9999">我愛北京天安門</FONT></B></p>';

     return $str;
}
效果:
//全過濾的效果
function test_index(){
    $str = '<p><B><FONT SIZE="5" COLOR="#FF9999">我愛北京天安門</FONT></B></p>';

    return drupal_html_to_text($str);
}

效果:

這時<p>被替換爲‘ ’
      <B>被替換爲*
      <FONT>被去掉,字號和顏色效果沒了





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章