关于使用coreseek并为其做分页的介绍


Posted in PHP onJune 21, 2013

coreseek 做分页时找数据总量还真不好找。以为他会给一个方法(函数)什么的去获取,结果却不是。
首先需要了解:
num_matches:
当前返回的结果数,<= limit设置值。
max_matches: 最多返回的结果数,默认为1000,用户最多只能看到1000条搜索结果。这个是在csft_mysql.conf中设置的。
total_found: 结果总数。索引中所有满足查询条件的文档总数。这个是在你查询的返回结果中的数组中有的。当然前提是你必须在query前设置:$this->sc->SetArrayResult(true);
total: 最多返回结果数,取值取决于max_matches值和total_found值。如果total_found数超过max_matches,则total = max_matches,否则,total = total_found。这个也是在你查询的返回结果中的数组中有的。当然前提也是你必须在query前设置:$this->sc->SetArrayResult(true);
这样,了解了这几个属性之后就可以做分页了。

我们应该使用返回值中的total来做分页总数据。虽然这个不代表真实的返回值(当返回值大于max_matches,也就是1000,如真实返回2500,但是你却只能得到1000)。
代码是:

$this->sc->SetServer("127.0.0.1",9312);
  $this->sc->SetArrayResult(true);
  $this->sc->SetLimits($start,$page);
//如果需要搜索指定全文字段的内容,可以使用扩展匹配模式:
  $this->sc->SetMatchMode(SPH_MATCH_ANY); 
$res = $this->sc->Query($where,"main");
$count = $res['total'];

这个¥count就是我们要的分页的总数据了。
其他的后续怎么分页是以样式和数据结构做的,不能雷同,并且分页也是基础的东西,所以这里就不再多说分页的详细问题了。我这里单单讨论这个总数据的取值情况。因为很多人都取count($res['matches'])的值,但是这个是分页后的返回结果,你只能得到10,或者20或者其他的值。呵呵,那就搞笑了。
PHP 相关文章推荐
php 删除记录同时删除图片文件的实现代码
May 12 PHP
SWFUpload与CI不能正确上传识别文件MIME类型解决方法分享
Apr 18 PHP
php网上商城购物车设计代码分享
Feb 15 PHP
解析PHP 使用curl提交json格式数据
Jun 29 PHP
利用php+mcDropdown实现文件路径可在下拉框选择
Aug 07 PHP
ASP和PHP实现生成网站快捷方式并下载到桌面的方法
May 08 PHP
php查询mysql大量数据造成内存不足的解决方法
Mar 04 PHP
php获取指定范围内最接近数的方法
Jun 02 PHP
PHP版本升级到7.x后wordpress的一些修改及wordpress技巧
Dec 25 PHP
微信公众号开发之获取位置信息php代码
Jun 13 PHP
PHP APP微信提现接口代码
Sep 30 PHP
PHP get_html_translation_table()函数用法讲解
Feb 16 PHP
使用php将某个目录下面的所有文件罗列出来的方法详解
Jun 21 #PHP
探讨GDFONTPATH能否被winxp下的php支持
Jun 21 #PHP
浅析php中jsonp的跨域实例
Jun 21 #PHP
解析php中array_merge与array+array的区别
Jun 21 #PHP
邮箱正则表达式实现代码(针对php)
Jun 21 #PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
Jun 21 #PHP
php输出echo、print、print_r、printf、sprintf、var_dump的区别比较
Jun 21 #PHP
You might like
中国广播史趣谈 — 几个历史第一次
2021/03/01 无线电
在线短消息收发的程序,不用数据库
2006/10/09 PHP
PHP封装的HttpClient类用法实例
2015/06/17 PHP
PHP生成随机码的思路与方法实例探索
2019/04/11 PHP
JS操作XML中DTD介绍及使用方法分析
2019/07/04 PHP
PHP检测一个数组有没有定义的方法步骤
2019/07/20 PHP
jquery取消选择select下拉框示例代码
2014/02/22 Javascript
JavaScript生成SQL查询表单的方法
2015/08/13 Javascript
js判断鼠标位置是否在某个div中的方法
2016/02/26 Javascript
js 判断一组日期是否是连续的简单实例
2016/07/11 Javascript
jQuery中ScrollTo用法示例
2016/09/04 Javascript
Bootstrap modal使用及点击外部不消失的解决方法
2016/12/13 Javascript
jQuery实现在HTML文档加载完毕后自动执行某个事件的方法
2017/05/08 jQuery
微信小程序蓝牙连接小票打印机实例代码详解
2019/06/03 Javascript
React冒泡和阻止冒泡的应用详解
2020/08/18 Javascript
js实现日历
2020/11/07 Javascript
vue切换菜单取消未完成接口请求的案例
2020/11/13 Javascript
微信小程序实现可拖动悬浮图标(包括按钮角标的实现)
2020/12/29 Javascript
python抓取网页图片示例(python爬虫)
2014/04/27 Python
说一说Python logging
2016/04/15 Python
Python for Informatics 第11章 正则表达式(一)
2016/04/21 Python
Python ldap实现登录实例代码
2016/09/30 Python
Python使用Tkinter实现机器人走迷宫
2018/01/22 Python
pytorch 实现删除tensor中的指定行列
2020/01/13 Python
Python selenium文件上传下载功能代码实例
2020/04/13 Python
Python HTMLTestRunner如何下载生成报告
2020/09/04 Python
Python+OpenCV图像处理——图像二值化的实现
2020/10/24 Python
我为党旗添光彩演讲稿
2014/09/13 职场文书
食堂管理制度范本
2015/08/04 职场文书
小学英语听课心得体会
2016/01/14 职场文书
创业计划书之情侣餐厅
2019/09/29 职场文书
测量JavaScript函数的性能各种方式对比
2021/04/27 Javascript
MongoDB orm框架的注意事项及简单使用
2021/06/20 MongoDB
关于@OnetoMany关系映射的排序问题,使用注解@OrderBy
2021/12/06 Java/Android
python的列表生成式,生成器和generator对象你了解吗
2022/03/16 Python
python pygame 开发五子棋双人对弈
2022/05/02 Python