【分享】sphinx的小技巧三则(最大记录数、高亮、搜索排序)
来源:互联网 发布:win10如何修改mac地址 编辑:程序博客网 时间:2024/05/29 19:59
一:Sphinx(coreseek)的查询默认最大记录数是:1000,而我们想更改这个数值。就需要更改二个地方。
1是更改csft.conf(如果是sphinx就是sphinx.conf)配置文件的:max_matches = 10000 #后面数字就是你想查询的最大记录数。建议在1000~10000之内。
2是在api调用时,$cl->SetLimits($pageStart, $pageSize, $max_limits);用SetLimits的第三个参数更改为你想要的显示最大记录数。
经过这二个配置和程序更改,你再查询看看呢!(注意你搜索要有这么多记录哦。呵)
二:sphinx的高亮。
开始按程序来设置高亮,都是没问题的。因为都是英文嘛。问题点主要是出现在中文的高亮上面。我的页面和数据库都是gbk编码。
所以做了如下配置和程序更改。
$opts = array(
"before_match" => "<i>",
"after_match" => "</i>",
"chunk_separator" => "..",
"limit" => 10,
"around" => 3
);
//$docs必须是数组传进来哦
function search_highlight($docs) {
$this->s_keywords = iconv('gbk', 'utf-8', $this->s_keywords);
$docs[0] = iconv('gbk', 'utf-8', $docs[0]);
$arr_words = $this->h_cl->BuildExcerpts ( $docs, $this->s_index, $this->s_keywords, $this->h_opts);
$arr_words[0] = iconv('utf-8', 'gbk', $arr_words[0]);
$this->s_keywords = iconv('utf-8', 'gbk', $this->s_keywords);
return $arr_words;
}
至此,中文高亮就显示正常了
三:搜索排序
默认我用了:$cl->SetMatchMode(SPH_SORT_RELEVANCE);,
而我如果想把最新的结果显示在前面,必须要用SPH_SORT_TIME_SEGMENTS模式。
所以我在配置文件里加上了:sql_attr_timestamp = add_time
在程序中就加上了:$cl->SetSortMode(SEGMENTS, 'add_time');
这样就正常了!
原文地址:http://bbs.lampbrother.net/read-htm-tid-122041.html
上一篇:完善匹配中文的Php正则表达式
下一篇:第一个项目结束有感!
- 欢迎grade1984在ChinaUnix博客...
- 欢迎xiaomengsoma在ChinaUnix...
- 欢迎force_with_you在ChinaUni...
- 欢迎diyff83在ChinaUnix博客安...
- 欢迎ceovok在ChinaUnix博客安...
- IP Sec VPN与NAT破镜重圆
- 网站导航
- GoAgent图文设置教程
- UT2.0正式版下载
- tomcat6.0配置(含配置视频下载...
- 大家都是用什么来管理hadoop集...
- 网站被人挂了吗,添加了些程序...
- Nginx如何保证不走宕机的那个...
- 大家谈谈MYSQL客户端和服务器...
- 以下代码运行后为何会输出5?...
- 【分享】sphinx的小技巧三则(最大记录数、高亮、搜索排序)
- [记录]修改MYSQL最大连接数的方法分享
- Sphinx语音识别学习记录 (三)-小范围语音英文识别
- Sphinx语音识别学习记录 (三)-小范围语音英文识别
- 搜索的小技巧
- 科目三考试小技巧分享
- 三则黑客的Google搜索技巧
- 三则黑客的Google搜索技巧
- 正负数的按位取反~(小技巧)
- 信息搜索的小技巧
- 搜索c++的小技巧
- 记录输入三数排序,字符串操作
- 收藏夹排序的小技巧两则
- 分治算法的利用例子(查找最大最小数,快速排序,查看第k小的数字)
- 寻找最大数(三)
- 寻找最大数(三)
- 寻找最大数(三)
- 寻找最大数(三)
- 当我遇见你的时候
- 拆掉思维里的墙,原来我还可以这样活---读书笔记
- 卡内基《每日一智》---我们在智慧中成长
- 项目回顾 (今天才能上网……都快忘了 )
- 完善匹配中文的Php正则表达式
- 【分享】sphinx的小技巧三则(最大记录数、高亮、搜索排序)
- 第一个项目结束有感!
- 嫁程序员是本世纪最增值的投资,有木有呀!!!
- 这一段代码用到最近学的三个知识点哈大家一起来研究哈
- 这篇作文我语文老师给了我十五分,觉得该给十六分的请表示一下支持!!
- 给自己一个充实自己的机会
- switch与ifelse的效率问题
- 强强老师的Linux那点事
- mount: unknown filesystem type ‘ntfs’