我有一个字符串(名称)列表,我希望与包含这些名称相同或差异的数据库匹配。 对于我想要匹配的每个字符串,我可以查询数据库,但这似乎并不高效,因为数据库是一组修复名称。
我想知道是否可以在PHP中完成此匹配。我可以在PHP中使用levenshtein函数,但我想知道是否有更高效的函数。
我想要的例子。左边是我想看的所有字符串,如果我在数据库中有这个(或一个小的差异)。在每个旁边,我想有一个下拉列表,其中包含与之匹配的选项。
最好的方法是什么?我有大约500-1000个字符串,我希望得到一个建议/下拉菜单。
亲切的问候
拉尔夫
答案 0 :(得分:0)
或许看看MySQL的全文搜索功能。我在DevZone上发现了这篇文章:http://devzone.zend.com/26/using-mysql-full-text-searching/
答案 1 :(得分:0)
如果你想在客户端进行,jQuery UI Autocomplete就是你想要的。这不仅非常容易根据您的需要进行配置,而且只需要一个查询即可获得所有字符串并将其保存到本地列表(jQuery自动完成数据源)。
然后,您可以为输入注册onkeyup事件,jQuery插件将查询现有的缓存数据源(不会给您的服务器带来更多压力)。