查看: 2812|回复: 7

[其它] DZ自动获取标签[update]

[复制链接]
发表于 21-2-20 18:24:13 | 显示全部楼层 |阅读模式
首先看代码以gbk为例
DZ 获取自动标签代码
  1. <?php

  2. //强制使用字符集

  3. @header('Content-Type: text/html; charset=gbk');

  4. $subjectenc = $_GET['subjectenc'];

  5. $messageenc = preg_replace("/\[.+?\]/U", '', $_GET['messageenc']);

  6. //关键部分,这里是将你网站的文章标题和内容发送到dz的标签库中去匹配,返回的是一个xml文档

  7. $data = @implode('', file("http://keyword.discuz.com/related_kw.html?title=$subjectenc&content=$messageenc&ics=gbk&ocs=gbk"));//把标题和内容发送到dz官方去找

  8. if($data) {//有数据返回

  9. $parser = xml_parser_create();//建立一个 XML 解析器

  10. xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);

  11. xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1);

  12. xml_parse_into_struct($parser, $data, $values, $index);//将 XML 数据解析到数组中

  13. xml_parser_free($parser);

  14. $kws = array();

  15. foreach($values as $valuearray) {//循环单曲xml中的数据到数组$kws

  16.   if($valuearray['tag'] == 'kw' || $valuearray['tag'] == 'ekw') {

  17.     $kws[] = siconv(trim($valuearray['value']), ‘gbk’, 'utf-8');//编码转换

  18.    }

  19. }

  20. $return = '';

  21. if($kws) {

  22.   foreach($kws as $kw) {

  23.    $return .= $kw.' ';//把获取到的标签用空格链接

  24.   }

  25.   $return = trim($return);

  26. }

  27. echo  $return;//返回匹配到的标签

  28. } else {

  29. echo ' ';//没有匹配的标签

  30. }

  31. ?>
复制代码





帖子/信息不错,登录后收藏/点赞/评分
发表于 21-2-20 18:24:19 | 显示全部楼层
食品酒水 应有尽有
转发了!!
可多端浏览;右侧扫码,手机/微信上订阅我们 ► 城事 房产 招聘 跳蚤 便民
发表于 21-2-20 18:24:23 | 显示全部楼层
家居家装
生活论坛越来越好!!
星巴克优惠券 瑞幸优惠券 滴滴优惠券 肯德基券 麦当劳券 饿了么红包 美团惊喜红包
发表于 21-2-20 18:24:34 | 显示全部楼层
发表于 21-2-20 18:24:45 | 显示全部楼层
家居家装
赞!赞!!
发表于 21-2-20 18:24:43 | 显示全部楼层
食品酒水 应有尽有
不错,你好棒!!
星巴克优惠券 瑞幸优惠券 滴滴优惠券 肯德基券 麦当劳券 饿了么红包 美团惊喜红包
发表于 21-2-20 18:24:55 | 显示全部楼层
美妆
顶一下,我是来混积分的!!
发表于 21-2-20 18:25:09 | 显示全部楼层

发表回复

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

联系客服 关注微信 下载APP 返回顶部 返回列表