Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4029235
  • 博文数量: 272
  • 博客积分: 7846
  • 博客等级: 少将
  • 技术积分: 6476
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-25 16:27
文章分类

全部博文(272)

分类: PHP

2014-03-07 21:46:44

一、分词
    SCWS 中文分词v1.2.2 开源免费的中文分词系统,PHP分词的上乘之选!
    首先,根据PHP的版本下载php_scws.dll文件,进行安装:
1. 根据您当前用的 PHP 版本,下载相应已编译好的 php_scws.dll 扩展库。

2. 将下载后的  php_scws.dll 放到 php 安装目录的
   extensions/ 目录中去(通常为:X:/php/extensions/或 X:/php/ext/)。我用的XAMPP,所以



3. 建立一个本地目录放规则集文件和词典文件,建议使用:C:/program files/scws/etc

4. 从 scws 主页上下载词典文件,解压后将 *.xdb 放到上述目录中


5. 从 scws 主页上下载规则集文件,解压后将 *.ini 放到第 3 步建立的目录
   规则集文件压缩包:
   解压后有三个文件分别为 rules.ini  rules.utf8.ini rules_cht.utf8.ini
   将三件文件拷到第 3 步所述的目录中


6. 修改 php.ini 通常位于 C:/windows/php.ini 或 C:/winnt/php.ini 之类的目录,
   在 php.ini 的末尾加入以下几行:
[scws]
;
; 注意请检查 php.ini 中的 extension_dir 的设定值是否正确, 否则请将 extension_dir 设为空,
; 再把 php_scws.dll 指定为绝对路径。
;
extension = php_scws.dll
scws.default.charset = gbk
scws.default.fpath = "c:/program files/scws/etc"

5. 重开 web 服务器即可完成。

   以上都是按照官方文档照办,照猫画虎即可。在phpinfo()中可以看到:

   嗯,这就是SCWS装好了。接下来就看看如何用PHP调用它。

二、PHP下分词工具SCWS的使用

  1. <?php
  2.     header('Content-Type:text/html; charset=utf-8');

  3.     $so = scws_new();
  4.     $so->set_charset('utf8');

  5.     $so->send_text("2、我一向理解不了母亲不同意儿子找的对象是一种什么心理。嫌身高?嫌体重?嫌长相?嫌学历?嫌单亲家庭?");
  6.     $i = 0;
  7.     while ($tmp = $so->get_result())
  8.     {
  9.         foreach($tmp as $K=>$val){
  10.             echo $val['word'].'  '.$val['attr']."
    "
    ;
  11.         }
  12.     }
  13.     $so->close();

  14. ?>

    主要是用scws_new()实例化一个对象so,然后用so的send_text()方法接收字符串,并通过关键的get_result()得到返回的结果。

   关于中文词的词性缩写,请参考如下介绍:
n.名词
v.动词
adj.形容词
adv.副词
clas.量词
echo.拟声词
stru.结构助词
aux.助词
coor.并列连词
conj.连词
suffix.后缀
prefix.前缀
prep.介词
pron.代词
ques.疑问词
num.数词
idiom.成语




阅读(5620) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~