sphinx 搜索和更新状态两个功能使用
2013-03-24 15:08
239 查看
包括搜索和更新状态两个功能使用。
参考:
http://sphinxsearch.com/wiki/doku.php?id=php_api_docs http://www.coreseek.cn/docs/coreseek_3.2-sphinx_0.9.9.html
//实例化 require_once("sphinxclient.class.php"); $sphinx = new SphinxClient; //搜索功能 $mode = SPH_MATCH_EXTENDED2; //匹配模式 $ranker = SPH_RANK_PROXIMITY_BM25; //统计相关度计算模式,仅使用BM25评分计算 $sphinx->SetServer('127.0.0.1', '9312'); $sphinx->SetArrayResult(true); $sphinx->SetMatchMode($mode); $sphinx->SetRankingMode($ranker); //过滤status字段,只显示正常帖子,不显示已删除帖子。字段要在sphinx配置为索引 $sphinx->SetFilter('status', array(0)); //过滤时间段 if($StartTime > 0) { $sphinx->SetFilterRange('senddate', $StartTime, time(), false); } //设置字段的权重 $sphinx->SetFieldWeights(array('title' => 10, 'description' => 5, 'body' => 5)); //设置排序,先按权重,再按id $sphinx->SetSortMode( SPH_SORT_EXTENDED, "@weight DESC, @id desc" ); //分页 $limitstart = 0; $row = 10; $sphinx->SetLimits($limitstart, (int)$row, ($row>1000) ? $row : 1000); //结果 $res = array(); $res = $sphinx->Query($this->Keywords." @flag !s", 'mysql, delta'); var_dump($res); //删除索引,删除帖子时更新状态(主索引和增量索引),不让搜索时搜索出来 $sphinx->UpdateAttributes('mysql', array('status'),array($aid => array(-2))); $sphinx->UpdateAttributes('delta', array('status'),array($aid => array(-2)));
参考:
http://sphinxsearch.com/wiki/doku.php?id=php_api_docs http://www.coreseek.cn/docs/coreseek_3.2-sphinx_0.9.9.html
相关文章推荐
- 使用DreamweaverMX2004的搜索替换功能提高工作效率。
- 使用Bootrap和Vue实现仿百度搜索功能
- 使用AngularJS让checkbox复选框实现限选功能。(如一次只能限选两个checkbox复选框)
- 使用Trepn Profiler中的应用状态功能查找应用问题
- 压缩文件搜索工具v 1.3.0.3Beta3 实现秒搜功能(更新2012.06.04)
- RxJava 使用debounce操作符 优化app搜索功能
- ASP中FSO的神奇功能 - 使用FSO进行搜索
- 使用 Sphinx 更好地进行 MySQL 搜索
- 使用python代码实现三叉搜索树高效率”自动输入提示”功能
- 如何使用谷歌“以图找图”图片搜索功能
- IOS-使用framework实现功能模块动态更新
- Win8在应用商店中如何使用搜索功能以快速找到需要信息
- 使用Xutils 框架 下载功能进度条无法更新
- 使用Sphinx对索引进行搜索
- 51CTO博客2.0 - 搜索功能上线啦【更新作者主页搜索功能】
- Android控件使用—AutoCompleteTextView自动补全实现搜索功能
- MFC对话框界面中使用CCmdUI对象更新菜单状态
- 本博客搜索,因为csdn的搜索功能不好使,所以使用google做个搜索
- Android锁屏或灭屏状态下,快速按两次音量下键实现抓拍功能(1.1Framework层使用广播形式实现)
- 使用Sparkle为OS X App添加自动更新功能