SCWS 中文分词

第一步:准备好Pscws4资料

下载 XDB 词典文件 【简体中文(UTF-8)
下载PSCWS4pscws4-20081221.tar.bz2
下载规则集文件【rules.tgz

第二步:将下载的文件解压,其中的 dict.utf8.xdb 和 规则集文件 按照下图放置



第三步:将解压出来的PSCWS4类Pscws4.class.php 和 xdb_r.class.php 放到 ThinkPHP/Library/Vendor/Pscws下

第四步:在控制器里面实力类。


function get_tags($title,$num){
	import("Vendor.Pscws.Pscws4");
	$pscws = new \PSCWS4('utf8');
	$pscws->set_dict(CONF_PATH . 'etc/dict.utf8.xdb');
	$pscws->set_rule(CONF_PATH . 'etc/rules.utf8.ini');
	$pscws->set_ignore(true);
	$pscws->send_text($title);
	$words = $pscws->get_tops($num);
	$pscws->close();

	$tags = array();
	foreach ($words as $val) {
		$tags[] = $val['word'];
	}
	
	return implode(',', $tags);
}
本来到这个时候就应该做好了,实现我们需要的分词功能了,但是却出现乱码了。这个问题折腾我们技术很长时间,怎么调试都不对,什么文件的读取权限之类的,全部都试一遍都不行。最后只好看源码。最终发现问题
在PSCWS4的构造函数中。

将构造函数修改为: function __construct($charset = 'gbk') { $this->PSCWS4($charset); }

ThinkPHP整合PSCWS4到此完满结束。


http://www.sxqswl.net/show-22-107-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值