在我搜索之后,我发现了如何对字符串 进行模糊搜索
但是我有一个字符串数组
$search = {"a"=> "laptop","b"=> "screen"....}
我从 DB MySQL 中检索到的
是否有任何 php 类或函数可以对单词数组进行模糊搜索
或者至少有一些有用信息的链接
我看到了推荐使用 PostgreSQL 的评论
而且它的模糊搜索能力但是
公司已有MySQL DB
有什么推荐吗??
最佳答案
您可以在 MySQL 中执行此操作,因为您已经拥有一个 MySQL 数据库 - How do I do a fuzzy match of company names in MYSQL with PHP for auto-complete?其中提到了 MySQL Double Metaphone implementation并且有一个 implementation在 MySQL 5.0+ 的 SQL 中
编辑: 很抱歉在这里回答,因为评论中的内容太多了……
因为您已经使用 PHP Levenshtein function 接受了答案那么我建议您先尝试这种方法。软件是迭代的; PHP 数组搜索可能正是您想要的,但您必须首先根据您的要求测试和实现它。正如我在 your other question 中所说边输入边查找 解决方案可能是这里最简单的解决方案,它只是在用户输入时缩小产品范围。可能不需要实现任何模糊搜索,因为您正在使用User 自己进行模糊搜索:-)
例如,用户开始键入 S
、a
、m
,这允许您将产品缩小到那些以 Sam
开头的。因此,您总是只让用户选择您已知有效的产品。
关于php - 在php中模糊搜索数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6896855/