当前位置: 首页 > Linux

全文搜索,迅搜体验

时间:2023-04-06 20:28:06 Linux

最近公司项目需要全文搜索的功能。网上有人说可以用迅搜,特地研究了一下。文档看了半天,没看懂;看了两天,看到了一些东西,然后跟着文档测试了一下,算是有点明白了。综上所述,希望对以后使用phper有所帮助。首先安装wgethttp://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2tar-xjfxunsearch-full-latest.tar.bz2cdxunsearch-full-1.3.0/shsetup.sh期间安装时,会提示你进入安装目录(如:/usr/local/xunsearch),或者选择默认的;如果有缺少软件的提示,根据提示安装即可。2、安装完成后启动,进入安装目录执行cd/usr/local/xunsearch执行bin/xs-ctl.shrestart强烈建议在启动脚本中加入此命令,以便自动启动每次服务器重启Search服务程序后,在Linux系统中,可以将脚本命令写入/etc/rc.local。3、查看php-sdk的运行情况,看是否支持。/usr/local/xunsearch/sdk/php/util/RequiredCheck.php四、导入mysql内容到Xunsearch索引库。在/usr/local/xunsearch/sdk/php/app目录下有一个demo.ini,也可以自己创建或者重命名。这是一个索引库。打开后,图中的id、title、intro就是要导入的数据库中某张表的字段。每个字段下方的类型表示寻搜中的字段类型。有以下几种类型:根据实际情况选择。假设现在有一个商品表goods,使用Xunsearch搜索商品时,需要将goods表中需要搜索的字段导入到demo.ini/usr/local/xunsearch/sdk/php/util/Indexer中。php--rebuild--source=mysql://root:password@localhost/dbname--sql="SELECTid,title,introFROMgoods"--project=demo五、编写php代码测试require_once'/usr/local/xunsearch/sdk/php/lib/XS.php';$xs=new\XS('演示');//自动使用/usr/local/xunsearch/sdk/php/app/demo.ini作为项目配置文件$docs=$xs->search->search('Mountainbike');//搜索山地自行车//获取搜索结果$result=array();foreach($docsas$doc){$arr=数组();$arr['id']=$doc->id;$arr['title']=$xs->search->highlight($doc->title);$arr['介绍']=$doc->介绍;$结果[]=$arr;}print_r($result);以上是最简单的单表搜索,但是由于是全文索引,所以可以搜索多表。至于如何使用多张表,有人说将多张表的内容保存在临时表中,然后将临时表的信息导入到索引库中,不过我还没试过。检查后,可以使用mysql的视图来解决。详细文档请参考官网http://www.xunsearch.com/doc/...

猜你喜欢