php利用scws实现mysql全文搜索功能的方法


Posted in PHP onDecember 25, 2014

本文实例讲述了php利用scws实现mysql全文搜索功能的方法。分享给大家供大家参考。具体方法如下:

scws这样的中文分词插件比较不错,简单的学习了一下,它包涵一些专有名称、人名、地名、数字年代等规则集合,可以直接将语句按这些规则分开成一个一个关键词,准确率在90%-95%之间,按照安装说明把scws的扩展放入php的扩展目录里,下载规则文件和词典文件,并在php配置文件中引用它们,就可以用scws进行分词了.

1) 修改 php 扩展代码以兼容支持 php 5.4.x

2) 修正 php 扩展中 scws_get_tops 的 limit 参数不允许少于 10 的问题

3) libscws 增加 scws_fork() 从既有的 scws 实例产生分支并共享词典/规则集,主要用于多线程开发.

4) 新增部分版本的 win32 的 dll 扩展

PHP实例代码如下:

<?php 

//实例化分词插件核心类 

$so = scws_new(); 

//设置分词时所用编码 

$so->set_charset('utf-8'); 

//设置分词所用词典(此处使用utf8的词典) 

$so->set_dict('/path/dict.utf8.xdb'); 

//设置分词所用规则 

$so->set_rule('/path/rules.utf8.ini '); 

//分词前去掉标点符号 

$so->set_ignore(true); 

//是否复式分割,如“中国人”返回“中国+人+中国人”三个词。 

$so->set_multi(true); 

//设定将文字自动以二字分词法聚合 

$so->set_duality(true); 

//要进行分词的语句 

$so->send_text(“欢迎来到火星时代IT开发”); 

//获取分词结果,如果提取高频词用get_tops方法 

while ($tmp = $so->get_result()) 

{ 

  print_r($tmp); 

} 

$so->close(); 

?>

注:如以上例子,输入的文字,词典,规则文件这三者的字符集必须统一,另外mysql 4.XX有的是不支持中文全文搜索的,可以存入关键字对应的区位码以方便全文搜索.

版本列表

版本 类型 平台 性能 其它

SCWS-1.1.x C 代码 *Unix*/*PHP* 准确: 95%, 召回: 91%, 速度: 1.2MB/sec

PHP扩展分词速度: 250KB/sec [下载] [文档] [安装说明]

php_scws.dll(1) PHP扩展库 Windows/PHP 4.4.x 准确: 95%, 召回: 91%,

php_scws.dll(2) PHP扩展库 Windows/PHP 5.2.x 准确: 95%, 召回: 91%,

php_scws.dll(3) PHP扩展库 Windows/PHP 5.3.x 准确: 95%, 召回: 91%, 

php_scws.dll(4) PHP扩展库 Windows/PHP 5.4.x 准确: 95%, 召回: 91%,

PSCWS23 PHP源代码 不限 (不支持UTF-8) 准确: 93%, 召回: 89%,

PSCWS4 PHP源代码 不限 准确: 95%, 召回: 91%,

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php 无极分类(递归)实现代码
Jan 05 PHP
PHP 金额数字转换成英文
May 06 PHP
在PHP中实现Javascript的escape()函数代码
Aug 08 PHP
php 文件上传实例代码
Apr 19 PHP
php另类上传图片的方法(PHP用Socket上传图片)
Oct 30 PHP
php利用腾讯ip分享计划获取地理位置示例分享
Jan 20 PHP
PHP的一个完美GIF等比缩放类,附带去除缩放黑背景
Apr 01 PHP
PHP判断是否为空的几个函数对比
Apr 21 PHP
PHP简单生成缩略图相册的方法
Jul 29 PHP
PHP使用GD库输出汉字的方法【测试可用】
Nov 10 PHP
php实现socket推送技术的示例
Dec 20 PHP
PHP实现QQ登录的开原理和实现过程
Feb 04 PHP
php中heredoc与nowdoc介绍
Dec 25 #PHP
php中实现xml与mysql数据相互转换的方法
Dec 25 #PHP
推荐5款跨平台的PHP编辑器
Dec 25 #PHP
主流PHP框架的优缺点对比分析
Dec 25 #PHP
10个简化PHP开发的工具
Dec 25 #PHP
PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法
Dec 25 #PHP
PHP中文编码小技巧
Dec 25 #PHP
You might like
joomla内置的表单验证功能使用方法
2010/06/11 PHP
高质量PHP代码的50个实用技巧必备(下)
2016/01/22 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
2018/05/25 PHP
PHP进阶学习之垃圾回收机制详解
2019/06/18 PHP
jQuery实现表单input中提示文字value随鼠标焦点移进移出而显示或隐藏的代码
2010/03/21 Javascript
在UpdatePanel内jquery easyui效果失效的解决方法
2010/04/11 Javascript
jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)
2010/10/20 Javascript
jquery实现图片灯箱明暗的遮罩效果
2013/11/15 Javascript
js加入收藏以及使用Jquery更改透明度
2014/01/26 Javascript
js创建对象的方式总结
2015/01/10 Javascript
javascript动态修改Li节点值的方法
2015/01/20 Javascript
以jQuery中$.Deferred对象为例讲解promise对象是如何处理异步问题
2015/11/13 Javascript
javascript实现简单加载随机色方块
2015/12/25 Javascript
基于Bootstrap的网页设计实例
2017/03/01 Javascript
vue元素实现动画过渡效果
2017/07/01 Javascript
详解React Native开源时间日期选择器组件(react-native-datetime)
2017/09/13 Javascript
微信小程序富文本渲染引擎的详解
2017/09/30 Javascript
javascript中如何判断类型汇总
2019/05/14 Javascript
vue集成kindeditor富文本的实现示例代码
2019/06/07 Javascript
Javascript confirm多种使用方法解析
2020/09/25 Javascript
Python实现的Kmeans++算法实例
2014/04/26 Python
Python解析网页源代码中的115网盘链接实例
2014/09/30 Python
Python中基础的socket编程实战攻略
2016/06/01 Python
搭建Python的Django框架环境并建立和运行第一个App的教程
2016/07/02 Python
Python网络爬虫中的同步与异步示例详解
2018/02/03 Python
Python下使用Scrapy爬取网页内容的实例
2018/05/21 Python
Python装饰器限制函数运行时间超时则退出执行
2019/04/09 Python
Django ORM 查询表中某列字段值的方法
2020/04/30 Python
John Hardy官方网站:手工设计首饰的奢侈品牌
2017/07/05 全球购物
销售副总经理岗位职责
2013/12/11 职场文书
工作表现自我评价
2014/02/08 职场文书
民事诉讼代理授权委托书
2014/10/11 职场文书
给上级领导的感谢信
2015/01/22 职场文书
八达岭长城导游词
2015/01/30 职场文书
2015年学生会工作总结范文
2015/03/31 职场文书
Python爬虫基础之简单说一下scrapy的框架结构
2021/06/26 Python