Discuz!提取文章标签

<?php   
//强制使用字符集
@header('Content-Type: text/html; charset=gbk');   
$subjectenc ='title'; //这是标题   
$messageenc = preg_replace("/\[.+?\]/U", '', 'content'); //这是内容  
//从内容中找标题中有TAG;  
$data = @implode('', file("http://keyword.discuz.com/related_kw.html?title=$subjectenc&content=$messageenc&ics=gbk&ocs=gbk"));// 把标题和内容发送到dz官方去找   
if($data) {
$parser = xml_parser_create();//建立一个 XML 解析器
xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);
xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1);
xml_parse_into_struct($parser, $data, $values, $index);//将 XML 数据解析到数组中
xml_parser_free($parser);   
$kws = array();
foreach($values as $valuearray) {
if(in_array($valuearray['tag'],array('kw','ekw'))) {   //kw和ekw是 DZ返回回来的XML中的一个元素名  
    $kws[] = iconv('utf-8','gbk',$valuearray['value']);//编码转换   
   }   
}
}
//最后出来的是数组.
print_r($kws);
?>

自己测试过了,可以使用 

posted @ 2014-04-18 15:45  FookLook  阅读(632)  评论(0编辑  收藏  举报