如何向PHP/SQL搜索脚本添加拼写建议
使用php/sql在我的站点上创建一个搜索函数,非常简单-只需使用LIKE子句在数据库上使用SELECT ALL查询并在页面上回显结果。我的问题是,如何添加拼写建议,以防用户键入错误的搜索查询。Mysql不会返回任何内容,除非搜索词与数据库内容完全匹配,例如,“Dofs”不会返回“Dogs”。那么如何添加拼写建议呢如何向PHP/SQL搜索脚本添加拼写建议,php,mysql,search,Php,Mysql,Search,使用php/sql在我的站点上创建一个搜索函数,非常简单-只需使用LIKE子句在数据库上使用SELECT ALL查询并在页面上回显结果。我的问题是,如何添加拼写建议,以防用户键入错误的搜索查询。Mysql不会返回任何内容,除非搜索词与数据库内容完全匹配,例如,“Dofs”不会返回“Dogs”。那么如何添加拼写建议呢 谢谢。您需要查看以下内容: 基本上,您需要一个字典和levenstien函数。此外,您还可以通过soap调用提供替代拼写(基于搜索引擎的语言语料库) 雅虎拼写建议: 谷歌拼写请求
谢谢。您需要查看以下内容: 基本上,您需要一个字典和levenstien函数。此外,您还可以通过soap调用提供替代拼写(基于搜索引擎的语言语料库) 雅虎拼写建议: 谷歌拼写请求: PHP的扩展如何
<?php
$pspell_link = pspell_new("en");
if (!pspell_check($pspell_link, "dofs")) {
$suggestions = pspell_suggest($pspell_link, "dofs");
foreach ($suggestions as $suggestion) {
echo "Possible spelling: $suggestion<br />";
}
}
?>
此PHP扩展需要安装aspell库。以下是Peter Norvig关于如何编写拼写检查器的优秀文章: 以下两个链接是本文中代码的PHP实现:
希望这能有所帮助。那么,2020年3月来到这里是值得一看的 从文档中: PHP拼写检查器是PHP的拼写检查器抽象库。通过为许多不同的拼写检查器提供统一的接口,您可以在不进行大量重写的情况下交换拼写检查器
使用PHP Spellchecker可以消除供应商锁定,减少技术债务,提高代码的可测试性。我是该类的作者,我很高兴知道它对你们很有用!它确实工作得很好,对于小字符串,它非常好,不需要安装任何外部依赖项或本机库,但是如果需要处理大字符串,它可能会变得非常慢。因此,在这些情况下,我建议使用类似aspell的东西。注意:根据上面链接上的评论,pspell在5.3+谷歌链接中不再受支持,现在已经失效