php使用PHPAnalysis提取关键字中文分词
php使用PHPAnalysis提取关键字中文分词
需求:做SEO的keywords时,需要从标题或者正文里提取关键字
1.PHPAnalysis下载地址
http://www.phpbone.com/phpanalysis/#api
原下载地址打不开,已上传到github
https://github.com/feixuekeji/PHPAnalysis
下载后解压放到extend目录下(以tp5为例,其他目录也行)
2.封装(如下封装已经在下载的文件夹内了)
<?php /** * @auther: xxf * Date: 2019/8/19 * Time: 11:04 */ namespace WordAnalysis; /** * 中文分词提取关键字 */ class Analysis { /** * Notes:关键字提取 * @auther: xxf * Date: 2019/8/19 * Time: 11:09 * @param string $content * @param int $num 获取数量 * @return string */ public static function getKeywords($content = "",$num = 3) { if (empty ( $content )) { return ''; } require_once 'phpanalysis.class.php'; \PhpAnalysis::$loadInit = false; $pa = new \PhpAnalysis ( 'utf-8', 'utf-8', false ); $pa->LoadDict (); $pa->SetSource ($content); $pa->StartAnalysis ( true ); $tags = $pa->GetFinallyKeywords ($num); // 获取文章中的n个关键字 return $tags;//返回关键字 } }
使用方法
$data['seo']['keyword'] = Analysis::getKeywords($article_info['title']); //或者 //在app/common.php中 function analysis($string='') { if (empty($string)) { return $string; } return WordAnalysis\Analysis::getKeywords($string); } //又或者直接在控制器中 use WordAnalysis\Analysis; return Analysis::getKeywords($string);
我要反馈