linux xunsou_Linux 使用 docker 下搭建xunsearch 搜索引擎服务

开始使用,以 YII2 为例:

composer 安装: composer require hightman/xunsearch 安装说明

生成配置文件,可根据文档自己手写一份,配置文件简单清晰。我的配置:

user_id

name

1

张三

2

李四

3

王五

...

...

project.name = user

project.default_charset = utf-8

server.index = 8383

server.search = 8384

[user_id]

type = id

[name]

index = self

tokenizer = default

这里只使用了用户id和名称

创建索引

namespace console\helper;

use Yii;

class UserXunSearch

{

/**

* 创建文档

* createDoc

*/

public static function createDoc()

{

try {

$userData = []; //数据自己查一下

/**

* @var $xunSearch \hightman\xunsearch\ConnectionYII2,

*/

$xunSearch = Yii::$app->xunsearch;

$db = $xunSearch->getDatabase('user');

$db->charset = 'UTF-8';

$db->createDoc();

foreach ($userData as $user){

//添加文档 http://www.xunsearch.com/doc/php/guide/index.add

$db->add([

'user_id' => $user['user_id'],

'name' => $user['name'],

]);

}

return true;

}catch (\Exception $e){

Yii::error($e->getMessage());

return false;

}

}

/**

* 搜索内容

* search

* @param $keyword

* @return bool|\XSDocument[]

*/

public static function search($keyword)

{

try {

/**

* @var $xunSearch \hightman\xunsearch\Connection

*/

$xunSearch = Yii::$app->xunsearch;

$db = $xunSearch->getDatabase('user');

return $db->xs->getSearch()

->setQuery('name:'.$keyword) // 构建搜索语句 http://www.xunsearch.com/doc/php/guide/search.query

->search();

}catch (\Exception $e){

Yii::error($e->getMessage());

return false;

}

}

}

插件很友善了提供了AR操作,小中型项目确实是不错的选择。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值