找回密码
 立即注册

QQ登录

只需一步,快速开始

利用Discuz分词接口制作的文章分词函数

代码:
  1. /**
  2. * DZ在线中文分词
  3. * @param $title string 进行分词的标题
  4. * @param $content string 进行分词的内容
  5. * @param $encode string API返回的数据编码
  6. * @return  返回的关键词
  7. */
  8. function dz_segment($title = '', $content = '', $encode = 'utf-8'){
  9.     if($title == ''){//标题不能为空
  10.         return false;
  11.     }
  12.     $title = rawurlencode(strip_tags($title));//标题去除HTML、XML 以及 PHP 的标签;转成url格式
  13.     $content = strip_tags($content);//去除内容当中的HTML、XML 以及 PHP 的标签。
  14.     if(strlen($content)>2400){ //在线分词服务有长度限制
  15.         $content =  mb_substr($content, 0, 800, $encode);//获取字符串的部分
  16.     }
  17.     $content = rawurlencode($content);//转换url格式
  18.     $url = 'http://keyword.discuz.com/related_kw.html?title='.$title.'&content='.$content.'&ics='.$encode.'&ocs='.$encode;
  19.     $xml_array=simplexml_load_file($url);//将XML中的数据,读取到数组对象中  
  20.     $result = $xml_array->keyword->result;//获取xml对象当中的关键词结果
  21.     $data = '';//我需要的是字符串,所以直接就为空吧,数组可以定义为array();
  22.     foreach ($result->item as $key => $value) {
  23.             $data .= (string)$value->kw." ";//我需要的是关键词之间用空格分割,其他可以array_push($data, (string)$value->kw);
  24.     }
  25.     if($data){
  26.         return $data;
  27.     }else{
  28.         return false;
  29.     }
  30. }
复制代码

函数需要传入$title,$content,$encode,$encode是默认编码utf-8,用的时候直接调用函数就行了


例子:
  1. http://keyword.discuz.com/related_kw.html?title='.$title.'&content='.$content.'&ics='.$encode.'&ocs='.$encode;
复制代码




本教程由无限星辰工作室CRX349独家整理和提供,转载请注明地址,谢谢。本文地址:https://www.xmspace.net/thread-304-1-1.html
无限星辰工作室  好集导航 Discuz全集下载  星辰站长网  集热爱361  一品文学  手机小游戏合集   海外空间网 星辰api  星辰支付二维码管理平台 阿里云服务器 腾讯云服务器
服务Discuz!建站|DiscuzQ配置|二开|小程序|APP|搬家|挂马清理|防护|Win/Linux环境搭建|优化|运维|
服务理念:专业 诚信 友好QQ842062626 服务项目 Q群315524225

发表于 2015-2-6 11:07:21 | 显示全部楼层 |阅读模式

回复 | 使用道具 举报

该帖共收到 0 条回复!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

美图秀

    • fastadmin 后台界面使用字段数组类型
    • Discuz!x3.5 修改标题高亮颜色
    • Discuz!x3.5 应用中心 下载应用一直下载中
    • 帖子定时显示
    • 论坛辅助审核
拖动客服框
Online Service
点击这里给我发消息
点击这里联系我们
微信扫一扫
在线客服
快速回复 返回顶部 返回列表