B 结合php使用要想在php中使用scws分词工具,必须安装php扩展,并且必须要求php与scws安装在同一台机器。cd /usr/local/src/scws-1.2.2/usr/local/php-5.3.8/bin/phpize ./configure --with-scws=/usr/local/scws --with-php-config=/usr/local/php-5.3.8/bin/php-configmakemake install在php.ini加入以下配置
extension = scws.so
scws.default.charset = gbk
scws.default.fpath = /usr/local/scws/etc重启php,看看phpinfo中scws扩展是否安装成功。php简单使用scws代码
$words = array();
$so = scws_new();
$so->set_charset(‘utf8‘);
$so->set_dict("/usr/local/scws/etc/dict.xdb");
$so->send_text($text);
while ($tmp = $so->get_result()){
foreach ($tmp as $val){
if (strlen($val[‘word‘]) > 3)
$words[] = $val[‘word‘];
}
}
$so->close();
print_r(array_count_values($words));
php?>
C XDB导入导出工具scws作者提供了php版本的词库导入导出工具。cd /usr/local/srcmkdir /usr/local/scws/php/mv make_xdb_file.php dump_xdb_file.php readme.txt xdb.class.php /usr/local/scws/php/cd /usr/local/scws/php/导出词典。readme.txt文件有详细的使用说明。/usr/local/php-5.3.8/bin/php ./dump_xdb_file.php /usr/local/scws/etc/dict.utf8.xdb /usr/local/scws/etc/dict.utf8.txtD 使用http-scws上面php的使用方式有一个小缺点,就是php要和scws在同一台机器上。意味着每台机器都要安装scws和php扩展。使用http-scw可以避免这样的问题,但是也要谨慎使用,因为涉及到网络传输。http-scws其实就是在scws的基础上做了一层http封装,以服务的方式在服务器上开启端口,监听请求。完整介绍见http://code.google.com/p/http-scws/。cd /usr/local/srcmv http-scws_2.1 /usr/local/http-scwscd /usr/local/http-scws修改http-scws.h文件,将第31行的#include 改成 #include 执行编译命令 gcc -o http-scws cJSON.c http-scws.c -L/usr/local/scws/lib -lscws -levent -lm -Wl,--rpath会在当前文件夹下生成一个有执行权限的http-scws文件./http-scws -h 查看帮助开启服务/usr/local/http-scws/http-scws -f /usr/local/scws/etc/dict.utf8.txt -r /usr/local/scws/etc/rules.utf8.ini -dnetstat -ntpl | grep 2011 我们可以看到默认的端口2011已经开启监听
{"status":{"no":"0","msg":"OK"},
"result":{"0":"得了","1":"感冒","2":"怎么办"},
"time":{"time":"0.0002","unit":"sec"}}