php写模糊搜索api接口,php通过sphinxapi接口实现全文搜索
发布日期:2021-06-24 10:22:50 浏览次数:4 分类:技术文章

本文共 1597 字,大约阅读时间需要 5 分钟。

php通过sphinxapi接口实现全文搜索

2018-12-12

257

下面讲解下 php通过sphinxapi接口实现全文搜索

1.首先先在服务器上安装好sphinx并且建立好索引文件,具体安装步骤参考以下链接

2.下载 sphinxapi.php(点击下载)并且放入到自己的项目中

3.调用接口,代码如下public function getSphinxData(){

$searchWord = "元旦";

$sp=new SphinxClient();

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

$sp->SetArrayResult(true);

$sp->SetMatchMode(SPH_MATCH_ALL);

$sp->SetSortMode(SPH_SORT_ATTR_DESC,'updatetime');  //排序字段

$sp->SetLimits(0,200);  //条数限制为200条

$res=$sp->Query($searchWord,'newindex');  //通过索引查找索索结果,newindex为配置中的索引名称

if(isset($res['matches'])&&count($res['matches'])>0)

{

$sql='select * from yourtable where id in(';

foreach ($res['matches'] as $v)

{

$sql.=$v['id'].',';

}

$sql=trim($sql,',').')';

$searchModel = M('search');  //实例化model,这里是我自己程序中的实例化,用的时候改成自己的操作

$result = $searchModel->fetchAll($sql); //查库操作,fetchAll()是我自己定义的方法,改成自己数据库操作即可

$total = $res['total']; //查询到的总量

$finalResult = array('result'=>$result,'total'=>$total);

print_r($finalResult);

}

else

{

return 0;

}

}

结果展示:

通过sphinx查询出结果结构如下Array

(

[error] =>

[warning] =>

[status] => 0

[fields] => Array

(

[0] => title

[1] => img_cover

[2] => url_link

[3] => ispublish

)

[attrs] => Array

(

[sid] => 1

[updatetime] => 2

)

//匹配结果

[matches] => Array

(

[0] => Array

(

[id] => 79476

[weight] => 2613

[attrs] => Array

(

[sid] => 718737

[updatetime] => 1543464537

)

)

[1] => Array

(

[id] => 79475

[weight] => 2613

[attrs] => Array

(

[sid] => 718736

[updatetime] => 1543464085

)

)

)

[total] => 117  //查询结果总量

[total_found] => 117

[time] => 0.000

[words] => Array

(

[元] => Array

(

[docs] => 625

[hits] => 638

)

[旦] => Array

(

[docs] => 122

[hits] => 124

)

)

最终返回结果如下

f1d7f254ffd038205ce1122860b5063b.png

分享到:

转载地址:https://blog.csdn.net/weixin_32058931/article/details/116154563 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:oracle安装出现2932,【案例】Oracle报错ORA-19815 fast_recovery_area无剩余空间解决办法...
下一篇:php取整v,php取整方式分享

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月09日 10时34分10秒