安装php版本结巴分词
git clone https://github.com/jonnywang/phpjieba.git
cd phpjieba/cjieba
make
cd ..
phpize
./configure
make
make install
如果你要安装其他版本的结巴分词,比如java,c++,python版本参考:https://github.com/yanyiwu/cppjieba
在php.ini配置结巴分词
需要在php.ini中配置结巴分词,ubuntu中位于/usr/local/etc/php/7.0/php.ini,你可以自己查找自己的文件位置,同时你要找到自己下载的phpjieba.git的位置:
extension=jieba.so
jieba.enable=1
jieba.dict_path=/private/var/www/phpjieba/cjieba/dict
*jieba.dict_path指向字典所在对应目录,请根据自己编译目录替换更改
测试
$result = jieba('小明硕士毕业于中国科学院计算所,后在日本京都大学深造');
echo implode('/', $result) . PHP_EOL;
//计算所/小明/京都大学/深造/硕士/中国科学院/毕业/日本
$result = jieba('小明硕士毕业于中国科学院计算所,后在日本京都大学深造', 1, 50);
echo implode('/', $result) . PHP_EOL;
//小明/硕士/毕业/于/中国/科学/学院/科学院/中国科学院/计算/计算所/,/后/在/日本/京都/大学/京都大学/深造
$result = jieba('他心理健康', 1);
echo implode('/', $result) . PHP_EOL;
//他/心理/健康/心理健康
$result = jieba('this is a demo, my name is jony', 1, 10);
echo implode('/', $result) . PHP_EOL;
//demo/jony
$result = jieba('this is a demo, my name is jony');
echo implode('/', $result) . PHP_EOL;
//this/ /is/ /a/ /demo/,/ /my/ /name/ /is/ /jony
$result = jieba('小明硕士毕业于中国科学院计算所,后在日本京都大学深造', 2);
print_r($result);
Array
(
[小明] => x
[硕士] => n
[毕业] => n
[于] => p
[中国科学院] => nt
[计算所] => n
[,] => x
[后] => f
[在] => p
[日本] => ns
[京都大学] => nz
[深造] => v
)
更新请参考example目录
词性可参考HanLP词性标注集解释
修改字典
上面我们配置了/private/var/www/phpjieba/cjieba/dict为存放目录,接下来我们要定义自己的字典库,一般情况下在user.dict.utf8中修改即可,可以把值设置高点防止其它权值太高导致你设置的无效:
不处理 999999999 nz
原创文章,转载请注明 :laravel/php安装使用结巴分词进行中文分词 - Laravel学习网
原文出处: https://phpartisan.cn/news/104.html
问题交流群 :168117787