Xunsearch 中文全文搜索

原文地址:http://www.yiichina.com/code/661

官网地址:http://www.xunsearch.com/

1、安装

wget http://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2

tar -jxvf xunsearch-full-latest.tar.bz2

cd xunsearch-full-latest

./setup.sh

2、composer下载php-sdk

composer require --prefer-dist hightman/xunsearch

Xunsearch 中文全文搜索

3、创建配置文件(http://www.xunsearch.com/tools/iniconfig辅助工具)

切换到hightman/xunsearch/app下创建配置文件

vim ***.ini

Xunsearch 中文全文搜索

4、构建索引

切换到hightman/xunsearch目录util/Indexer.php --rebuild --source=mysql://user:pass@127.0.0.1/db --sql="select * from db" --project=配置文件名

5、用法以yii2距离,在main.php文件中添加

'xunsearch' => [
  'class' => 'hightman\xunsearch\Connection', // 此行必须
  // 'iniDirectory' => '@app/config', // 搜索 ini 文件目录,默认:@vendor/hightman/xunsearch/app
  // 'charset' => 'utf-8', // 指定项目使用的默认编码,默认即时 utf-8,可不指定
],

控制器中

public function actionIndex(){
        $db = Yii::$app->xunsearch->getDatabase('duanzi');
        // $db = Yii::$app->xunsearch('duanzi');
        $xs = $db->xs;
        $search = $db->getSearch();
        $index = $db->getIndex();
        $key = Yii::$app->request->get('key');
        // $results = $search->search($key);
        $pages = new Pagination(['totalCount'=>$search->count($key)]);
        $results = $search->setQuery($key)->setLimit($pages->limit,$pages->offset)->search();
        return $this->render('index',['results'=>$results,'pages'=>$pages]);
    }
上一篇:认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法。元素、属性和文本的树结构(节点树)。


下一篇:javascript小实例,移动端页面中的拖拽