搜尋
首頁php教程php手册Thinkphp3.2使用scws中文分词 提取关键词,

Thinkphp3.2使用scws中文分词 提取关键词,

Jun 13, 2016 am 08:52 AM
thinkphp3.2中文使用關鍵字分詞提取

Thinkphp3.2使用scws中文分词 提取关键词,

SCWS 是 Simple Chinese Word Segmentation 的首字母缩写(即:简易中文分词系统)。
1.下载scws官方提供的类(这里使用的是pscws第四版的)
http://www.xunsearch.com/scws/down/pscws4-20081221.tar.bz2
下载XDB 词典文件 (这里使用的是utf8简体中文词典包)
http://www.xunsearch.com/scws/down/scws-dict-chs-utf8.tar.bz2
2.解压scws类Pscws.class.php(这里我把pscws4.class.php文件名换成了pscws.class.php)和XDB_R.class.php(这里我把xdb_r.class.php文件名换成了大写的XDB_R.class.php)放到ThinkPHP\Library\Org\Util目录下面。
3.然后修改Pscws.class.php
加入命名空间

<span>1</span> namespace Org\Util;

将类的名称改为Pscws

把require_once (<span>dirname</span>(<span>__FILE__</span>) . '/XBD_R.class.php');这段代码删除掉。

修改XDB_R.class.php
加入命名空间

namespace Org\Util;

4.解压XDB 词典文件
在Public\admin目录下新建一个dict文件夹,然后将XDB 词典文件的dict.utf8.xdb解压到词目录下,再把scws类中的etc下面的rules.utf8.ini放到此目录下面。
5.在入口文件加入一行常量定义代码(其实就是定义词典文件和配置文件的路径)

<span>define</span>("CONF_PATH", <span>dirname</span>(<span>__FILE__</span>)."/Public/admin/dict/");

6.在IndexController.class.php控制器里面建立一个私有方法,供其他方法调用

 <span>/*</span><span>*
     * 中文分词  
         * @params string $title 需要分词的语句 
         * @params int $num  分词个数,默认不用填写
     *</span><span>*/</span>
    <span>private</span> <span>function</span> get_tags(<span>$title</span>,<span>$num</span>=<span>null</span><span>){        
        </span><span>$pscws</span> = <span>new</span> \Org\Util\Pscws('utf8'<span>);
        </span><span>$pscws</span>->set_dict(CONF_PATH . 'dict.utf8.xdb'<span>);
        </span><span>$pscws</span>->set_rule(CONF_PATH . 'rules.utf8.ini'<span>);
        </span><span>$pscws</span>->set_ignore(<span>true</span><span>);
        </span><span>$pscws</span>->send_text(<span>$title</span><span>);
        </span><span>$words</span> = <span>$pscws</span>->get_tops(<span>$num</span><span>);
        </span><span>$pscws</span>-><span>close();
        </span><span>$tags</span> = <span>array</span><span>();
        </span><span>foreach</span> (<span>$words</span> <span>as</span> <span>$val</span><span>) {
            </span><span>$tags</span>[] = <span>$val</span>['word'<span>];
        }
        </span><span>return</span> <span>implode</span>(',', <span>$tags</span><span>);
    }
      </span><span>/*</span><span>*
     * 商品搜索结果页
     *</span><span>*/</span>
    <span>public</span> <span>function</span><span> search(){
        </span><span>$rzt</span>=<span>$this</span>->get_tags("新款 牛漆皮小尖头直跟高跟单鞋910033 灰羊猄(7.31发货) 39"<span>);
        </span><span>print_r</span>(<span>$rzt</span><span>);
    }</span>

显示的结果为:

漆皮,单鞋,尖头,高跟,新款,发货,910033,7.31,39

 

 

 

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具