优雅的搜索方式(PHP+MySQL)


Elegant way to search (PHP + MySQL)

我们有一个用Codeigniter框架编写的网站。现在我们想要一个好的,快速的基于soundex的搜索功能的网站。这只是一个微博,所以我们只会搜索帖子的标题。

那么什么对我们最好呢?

我有两个想法:

  1. 在post表中创建另一列,使用标题的soundex副本,并在其上创建FULL-TEXT索引。

  2. 将标题中的单词分解,并将单词的soundex等效项保存在带有帖子id的新表中。就像一个自动标签系统。

哪种方法更好,为什么?你能建议一个更好的方法吗?

谢谢你的回答!

Soundex很棒,但它通常不能满足用户对搜索的期望(由谷歌等建立)

文本搜索的常见解决方案,包括模糊搜索和词干,是使用类似SOLR的东西;使用web服务调用与PHP集成相对容易。

Zend框架集成了Lucene(从未使用过它,但它可能会为您节省一些时间)-Lucene是一个开源的免费文本搜索平台。

可以使用双元手机算法