在我搜索之后,我发现了如何对a进行模糊搜索string
但我有一个字符串数组
$search = {"a" => "laptop","b" => "screen" ....}
我从 MySQL 数据库中检索到的
是否有任何 php 类或函数可以对单词数组进行模糊搜索
或者至少有一个可能包含一些有用信息的链接
我看到一条评论推荐使用 PostgreSQL
它是模糊搜索能力但是
公司已经有一个 MySQL DB
有推荐吗??
You could在 MySQL 中执行此操作,因为您已经有一个 MySQL 数据库 -如何将 MYSQL 中的公司名称与 PHP 进行模糊匹配以实现自动完成? https://stackoverflow.com/questions/369755/how-do-i-do-a-fuzzy-match-of-company-names-in-mysql-with-php-for-auto-complete/379644#379644其中提到了MySQL 双 Metaphone 实现 http://www.atomodo.com/code/double-metaphone并有一个执行 http://www.atomodo.com/code/double-metaphone/metaphone.sql/view在 MySQL 5.0+ 的 SQL 中
Edit:抱歉在这里回答,因为评论内容超出了内容范围……
由于您已经使用接受了答案PHP Levenshtein 函数 http://php.net/manual/en/function.levenshtein.php那么我建议你先尝试这种方法。软件是迭代的; PHP 数组搜索可能正是您想要的,但您必须首先根据您的要求测试和实现它。正如我在你的另一个问题 https://stackoverflow.com/questions/6892006/how-to-check-the-input-for-a-possible-close-match-from-a-db a 键入时查找解决方案可能是这里最简单的解决方案,它只是根据用户类型缩小产品范围。可能不需要实施任何fuzzy搜索,因为您正在使用User自己进行模糊搜索:-)
例如用户开始输入S
, a
, m
这可以让你缩小范围products对于那些以Sam
。所以你总是只让用户select您已经知道的产品是有效的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)