网站地图    收藏   

主页 > php专栏 > php综合实列 >

php如何调用sphinx(coreseek)详解

来源:未知    时间:2015-12-02 12:03 作者:xxadmin 阅读:

[导读] php如何调用sphinx(coreseek)详解 下面为大家带来PHP如何调用sphinx实列 ?phpincludeSphinxClient.class.php;header(Content-Type:text/html;charset=UTF-8);if($_GET){//关键词$keyword=urldecode(trim(strip_tags($_GET[keyword])));...

php如何调用sphinx(coreseek)详解

下面为大家带来PHP如何调用sphinx实列

<?php
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 '<pre>';
       // 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 '<form. method="get"><input type="type" name="keyword"><input type="submit" value="商品搜索"></form>';
}
?>


自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论