博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows下的coreseek安装及PHP调用入门
阅读量:4353 次
发布时间:2019-06-07

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

转载:http://zhan.renren.com/longmensoft?gid=3602888498043096197&checked=true

把我的运行环境简单说一下:windows XP,装了php/mysql

下面进入正题:

1.到官网下载

2 安装执行环境,一般系统都会有安装,官网有说明

3.将下载的coreseek压缩包解压到你觉得合适的位置,把主文件夹的名字改为你觉得合适的名字。

 

4.MYSQL测试:

   在MYSQL的test数据库中,导入coreseek文件夹下的sql文件:    var\test\documents.sql

   这样就生成了测试用的数据表 test.documents

   下面这一步很关键,我就在这一步上被卡了好长时间:

   打开etc下的csft_mysql.conf,填入登陆mysql需要的基本信息。

 maybe 新手对配置搞不懂,请参看http://www.borghan.com/archives/using-coreseek-with-PHP-with-multiple-indexes.html

 

5.建立索引

通过修改csft_mysql.conf的配置或者创建新的conf文件,就可以指定要建立索引的数据表以及建立索引的方式。如何配置请参看官方手册,或者这篇文章:

这里只是对coreseek默认的测试数据表 test.documents,以其默认的方式建立索引。

建立索引需要进入cmd,用dos模式工作:

在dos下进入coreseek的主文件夹下,执行如下命令:

bin\indexer -c etc\csft_mysql.conf --all 

数据表 test.document的索引就建立好了

6.查询

还是在dos模式下,键入

bin\search -c etc\csft_mysql.conf xxxx

xxxx就是你要查询的内容,dos下最好只查询英文内容,因为dos下由于编码原因,不一定能查询出来。

dos下的查询主要是起到测试的作用,真正的查询应该还是要通过调用API

7.启动搜索服务

还是在dos模式下,键入

bin\searchd -c etc\csft_mysql.conf 

这样coreseek就进入监听查询命令的状态

注意,进入监听后这个dos窗口不能关闭,不然监听就结束了。

8.php调用coreseek

大概分三个步骤:

(1)调入coreseek目录下的api//sphinxapi.php

(2)对查询命令SphinxClient()进行配置,配置的详细说明见官方手册或参看下文:

(3)查询

程序如下:

<?

//第一步:

require_once "E:/coreseek/api/sphinxapi.php";// 我的coreseek安装在E:/coreseek目录下,你需要根据你的coreseek的位置进行调整

//第二步:

   $sphinx = new SphinxClient();

$sphinx->SetServer ( 'localhost', 9312 );//coreseek的主机名和端口

$sphinx->SetArrayResult ( true );//设置返回结果集为php数组格式

$sphinx->SetLimits(0, 20, 1000);//匹配结果的偏移量,参数的意义依次为:起始位置,返回结果条数,最大匹配条数

$sphinx->SetMaxQueryTime(10);//最大搜索时间

//第三步:

$result = $sphinx->query ('xxxx', "mysql");//xxxx是查询的内容,mysql是测试的配置文件中系统默认的类名

//结果:

print_r($sphinx);//显示所有SphinxClient()类的内容,如果发生查询错误,也可以在这里找到。

print_r($result);//显示查询结果信息,

/*total是匹配到的数据总数量

matches是匹配的数据,包含id,attrs这些信息

words是搜索关键字的分词

并不会返回像mysql那样的数据数组

*/

?>

 

看完之后可参看http://www.borghan.com/archives/using-coreseek-with-PHP-with-multiple-indexes.html

转载于:https://www.cnblogs.com/M-D-Luffy/p/4711569.html

你可能感兴趣的文章
给年轻程序员的几句话
查看>>
ionic如何uglify和minify你的js,css,image,png....
查看>>
[LeetCode]Minimum Depth of Binary Tree
查看>>
jboss初体验
查看>>
Python列表、元组练习
查看>>
angular页面刷新
查看>>
Leetcode:7- Reverse Integer
查看>>
C6表单(方成eform)---自定义流程标题格式
查看>>
GridView下DropDownList 的选择方法onselectedindexchanged 实现方法
查看>>
Python之set集合
查看>>
Generic Repository Pattern - Entity Framework, ASP.NET MVC and Unit Testing Triangle
查看>>
Win7 下新版本Windows Virtual PC 安装SharePoint步骤详解
查看>>
SQLSERVER 升级版本的方法
查看>>
atitit.web 推送实现方案集合
查看>>
VisualSVN和VisualSVN Server有区别,前者是客户端,后者是服务器端
查看>>
jquery1.8.3 callbacks源码分析
查看>>
Mac Anaconda 安装
查看>>
Vue2.0 新手入门 — 从环境搭建到发布
查看>>
带jdk15类似的jar配置
查看>>
redis基本操作
查看>>