php sphinx api调用,php 调用 sphinx

include 'SphinxClient.class.php';

header('Content-Type: text/html;charset="UTF-8"');

if ($_GET) {

// 关键词

$keyword = urldecode(trim(strip_tags($_GET['keyword'])));

$keyword = "二手房" ;

if ($keyword) {

// 包含Sphinx的api文件

//  require_once 'sphinxapi.php';

// sphinx服务器地址

$server = '10.115.12.78';

// 端口

$port   = 9312;

// 索引名 为*时表示搜索所有索引

$indexName = 'idx_sale_beijing';

// 分页页码

$page = intval($_GET['page']) > 1 ? intval($_GET['page']) : 1;

// 每页显示的数量

$pageSize = 30;

$sphinx = new SphinxClient();

// 建立连接

$sphinx->SetServer($server, $port);

// 连接超时时间(非常必要,比如sphinx服务器挂了等异常情况) 单位为s,秒

$sphinx->SetConnectTimeout(3);

// 最大查询时间 单位为ms,毫秒

$sphinx->SetMaxQueryTime(2000);

// 按分页取结果

$sphinx->SetLimits(($page-1)*$pageSize, $pageSize); //第一个参数为offset,第二个参数为limit

// 模式

// $sphinx->SetMatchMode(SPH_MATCH_EXTENDED);

// 取到的原始数据

$orgDatas = $sphinx->Query($keyword, $indexName);

// 调试用,如果有错误的话,可以打印$errors的值

$errors = $sphinx->GetLastError();

var_dump($errors);

// echo '

';

// var_dump($orgDatas);

$sp_error= $sphinx->Status() ;

$sp_client= $sphinx->GetLastWarning();

print_r($sp_client);

/* // 下面是对结果的处理

$datas = array('goods'=>array(),'total'=>0);

if ($orgDatas['total'] > 0) {

$datas['total'] = $orgDatas['total'];

foreach ($orgDatas['matches'] AS $val) {

$val['attrs']['goods_id'] = $val['attrs']['goods_id_new'];

unset($val['attrs']['goods_id_new']);

$datas['goods'][] = $val['attrs'];

}

}

var_dump($datas);

*/

}

} else {

echo '

';

}

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值