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中通过ADODB库实现调用Access数据库之修正版本
Dec 31 PHP
PHP生成UTF8文件的方法
May 15 PHP
php HtmlReplace输入过滤安全函数
Jul 03 PHP
JSON在PHP中的应用介绍
Sep 08 PHP
php检查字符串中是否包含7位GSM字符的方法
Mar 17 PHP
php通过修改header强制图片下载的方法
Mar 24 PHP
详解PHP中的状态模式编程
Aug 11 PHP
PHP实现数组array转换成xml的方法
Jul 19 PHP
基于PHP-FPM进程池探秘
Oct 17 PHP
php curl优化下载微信头像的方法总结
Sep 07 PHP
Ajax+PHP实现的分类列表框功能示例
Feb 11 PHP
PHP7移除的扩展和SAPI
Mar 09 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
Prototype 工具函数 学习
2009/07/23 Javascript
javaScript parseInt字符转化为数字函数使用小结
2009/11/05 Javascript
浅谈JavaScript字符集
2014/05/22 Javascript
Node.js中使用计时器定时执行函数详解
2014/08/15 Javascript
js实现ArrayList功能附实例代码
2014/10/29 Javascript
JavaScript知识点总结(十)之this关键字
2016/05/31 Javascript
浅谈Angular2 ng-content 指令在组件中嵌入内容
2017/08/18 Javascript
js循环map 获取所有的key和value的实现代码(json)
2018/05/09 Javascript
node.js中 mysql 增删改查操作及async,await处理实例分析
2020/02/11 Javascript
VSCode插件安装完成后的配置(常用配置)
2020/08/24 Javascript
vue实现图片裁剪后上传
2020/12/16 Vue.js
从零学Python之入门(五)缩进和选择
2014/05/27 Python
Python的字典和列表的使用中一些需要注意的地方
2015/04/24 Python
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
python脚本设置系统时间的两种方法
2016/02/21 Python
python文件操作相关知识点总结整理
2016/02/22 Python
利用Python自动监控网站并发送邮件告警的方法
2016/08/24 Python
Python内置函数—vars的具体使用方法
2017/12/04 Python
详解pandas如何去掉、过滤数据集中的某些值或者某些行?
2019/05/15 Python
python3 tkinter实现点击一个按钮跳出另一个窗口的方法
2019/06/13 Python
Django发送邮件和itsdangerous模块的配合使用解析
2019/08/10 Python
Python列表元素常见操作简单示例
2019/10/25 Python
python 中的[:-1]和[::-1]的具体使用
2020/02/13 Python
Python通过递归函数输出嵌套列表元素
2020/10/15 Python
ASP.NET Core中的配置详解
2021/02/05 Python
使用HTML5在网页中嵌入音频和视频播放的基本方法
2016/02/22 HTML / CSS
AmazeUi Tree(树形结构) 应用小结
2020/08/17 HTML / CSS
美国在线奢侈品寄售商店:Luxury Garage Sale
2018/08/19 全球购物
const和static readonly区别
2013/05/20 面试题
大学生四年生活自我鉴定
2013/11/21 职场文书
英文留学推荐信范文
2014/01/25 职场文书
美德好少年主要事迹
2014/01/29 职场文书
心得体会格式及范文
2016/01/25 职场文书
青年岗位能手事迹材料(2016推荐版)
2016/03/01 职场文书
总结高并发下Nginx性能如何优化
2021/11/01 Servers
Python中异常处理用法
2021/11/27 Python