一分一毛也是爱

微信

微信

支付宝

支付宝

观海听潮

观海听潮博客

登录
还没有账号?去注册
观海听潮

观海听潮博客

注册
  • 欢迎来自美国弗吉尼亚州的访客,您好!
×

我的名片

网名:观海听潮

职业:PHP开发工程师

现居:山东省-青岛市

Email:1256699215@qq.com

网站统计

  • 观海听潮•博客
  • 57篇
  • 145条
  • 30166次
  • 125次
  • 美国弗吉尼亚州

您现在的位置是:首页  > 技术杂谈  > Thinkphp  > php  > sphinx sphinx

观海听潮

Thinkphp 调用sphinx3.1.1

摘要
Thinkphp 调用sphinx3.1.1

1、安装部署sphinx3.1.1,之前文章介绍过

2、复制sphinx/api目录下的sphinxapi.php文件到Thinkphp项目的下,在extend目录下新增Sphinx目录,将sphinxapi.php拷贝到该目录下,

重命名未SphinxClient.php。

3、修改SphinxClient.php,在头部添加命名空间:namespace Sphinx;

4、新增方法调用:

/**

* @param $index 索引名称

* @param $str 检索内容

* @param $page 分页页码

* @param $page_size 分页大小

*/

function sphinxSearch($index,$str,$page,$perpage){

$sphinx = new SphinxClient();

$sphinx->SetServer('127.0.0.1', 9312);

$sphinx->SetConnectTimeout(3);

$sphinx->_limit = 10000;

$sphinx->SetGroupBy('create_time', SPH_GROUPBY_ATTR, 'create_time desc');

$res = $sphinx->Query($str,$index);

$sphinx->Close();

if(isset($res['matches'])&&!empty($res['matches'])){

$ids = array_keys($res['matches']);

$ids = array_slice($ids,($page-1)*$perpage,$perpage);

$ids = implode(',', $ids);

return array('ids'=>$ids,'count'=>$res['total_found']);

}else{

return false;

}

}

5、调用方法

sphinxSearch('blog','观海听潮',1,15);//blog是索引名称

sphinxSearch('blog;blog_incre','观海听潮',1,15);多个索引调用


转载请注明: 观海听潮博客

本文地址:https://chengzhigang.cn/al/53.html

讨厌 (0)
微博logo QQ空间logo QQlogo 豆瓣logo 人人logo 百度贴吧logo 有道云笔记logo

文章评论

表情表情
×
图片图片

评论列表