我们有一个用 Codeigniter 框架编写的网站。现在我们希望网站有一个基于 soundex 的快速搜索功能。这只是一个微博,所以我们只会搜索帖子的标题。
那么什么对我们最好呢?
我有两个想法:
在 post 表中使用标题的 soundex 副本创建另一列,并在其上添加 FULL-TEXT 索引。
分解标题中的单词并将与单词等效的 soundex 保存在具有帖子 id 的新表中。就像一个自动标签系统。
哪种方法更好,为什么?你能推荐一个更好的方法吗?
感谢所有的答案!
Soundex 很棒 - 但它通常不能满足用户对搜索的期望(由 Google 等建立)。
文本搜索的常见解决方案,包括模糊搜索和词干提取,是使用类似SOLR的东西;使用 Web 服务调用与 PHP 集成相对容易。
Zend 框架集成了 Lucene(从未使用过,但它可能会为您节省一些时间) - Lucene 是一个开源的自由文本搜索平台。
可以使用双变音器算法