一般的開發中的相關文章或內容都是透過關鍵字標籤、標題來實現相關搜尋的,但這樣是搜尋基本上會使用低效的like語句,由於效率低下在稍微大一點的專案開發中我們無法進行文章或相關內容的詳情欄位搜尋(伺服器壓力過大、效率極低)。
常見的解決方案
1、sphinx coreseek
優點: 技術成熟、穩定
缺點: sphinx 不支援中文coressk 目前已經停止維護【如果是純英文環境sphinx 極佳】
2、迅搜(Xunsearch)
##優點: 技術成熟、穩定#缺點: 安裝過程複雜,配置不夠靈活3、mysql 全文搜尋
有點:安裝方便、效率高缺點:對中文支援不夠好來自hcoder的解決方案(分詞自主配置)優點: 安裝簡單(php 元件)、底層由開發者自行編寫更清晰底層、更容易的最佳化缺點: 需要開發者有php mysql 基礎,需要自己寫整個過程的程式碼#原則
1、获取词语环节 文章数据表 -> 逐行读取文章信息 -> 组合所有文字内容 -> 分词、去重 -> 记录到新的数据表 2、搜索环节 搜索关键字记录表 -> 合并文章数据 -> 去重 -> 展示数据
使用到的第三方元件(scws)
http://www.xunsearch.com/scws/
以上是PHP實作中文全文搜尋的原理介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!