Yii2整合迅搜實現高效能中文分詞檢索。本文主要介紹了Yii2框架整合Xunsearch搜尋引擎的方法,結合實例形式分析了Yii2框架整合Xunsearch的具體步驟與相關注意事項,需要的朋友可以參考下。希望對大家有幫助。
具體如下:
公司一直用的YII2框架,然後要做一個中文搜尋引擎,所有想的Xunsearch這個項目,之前有文章提到了,怎麼安裝Xunsearch服務端。 (參考《PHP在innodb引擎下快速代建全文搜尋功能簡明教學》)
xunsearch暫時只有Liunx的服務端和PHP-SDK。但作者確提供了一個YII2的擴充。突然覺得好幸福的說。
本來是透過使用PHP-SDK寫一個簡單的新增索引和更新索引還有刪除索引的功能,但有考慮到多項目的情況。就是一個Xunsearch可以被多個專案公用,所有設定檔放置在每個專案的設定檔裡面,根據這個專案的設定檔來區分每一個搜尋資料庫。這是我一開始的想法,但重點是不是怎麼想,而是怎麼做。實踐才是硬道理,然後就遇到下面的這些問題。
參見官方http://www.yiiframework.com/extension/yii-xunsearch/#hh4 這裡目標鏈接,我接下來要說下安裝心得
// application components 'components => [ // ... other components ... 'xunsearch' => [ 'class' => 'hightman\xunsearch\Connection', // 此行必须,这里不一定是这写的,可能是hightman.xunsearch.Connection 根据实际项目出发 'iniDirectory' => '@app/config', // 搜索 ini 文件目录,默认:@vendor/hightman/xunsearch/app 'charset' => 'utf-8', // 指定项目使用的默认编码,默认即时 utf-8,可不指定 ], ],
然後,如果你的PHP環境是整合的安裝包,可能會遇到這麼一個問題
Unexpected character in input: '\' (ASCII=92) state=1
#網路上有人說是php.ini 裡面的設定問題,說把,short_open_tag 改成On,我第一看感覺很有道理,然後找到發現,本來就是On。
因為那個YII2的擴充用到了PHP5.3才有的命名空間特效。而我的本地PHP版本是5.2.6。我表示淡定不了。折磨一天的事情,居然是因為PHP版本太低。 。 。
就總結到這裡。
相關推薦:
yii2 modal彈跳視窗之ActiveForm實作ajax表單非同步驗證
以上是Yii2整合迅搜實現高效能中文分詞檢索的詳細內容。更多資訊請關注PHP中文網其他相關文章!