PHP拼写检查和建议类似于谷歌"您的意思是:"

时间:2016-01-29 01:55:07

标签: php google-search spell-checking

我正在尝试对用户进行拼写检查'查询使用类似于谷歌的系统"您的意思是:"使用PHP。

Incorrect Google Query Corrected Google Query

有没有办法用插件或API来做到这一点?如果没有,你的建议是什么?

可能的简化代码?

API

<?php
    function checkSpelling($query) {
        //Boolean where false value means a word is spelt wrong in string
        return file_get_contents("http://foo.com/?q=$query");
    }

    function getSuggestions($query) {
        //data with suggestions for word
        return file_get_contents("http://foo.com/?q=$query");
    }

    if (!checkSpelling(foo)) {
        echo getSuggestions(foo);
    }
?>

插件

<?php
    require("plugin.php");

    //plugin functions similar to the functions above are defined already

    if (!checkSpelling(foo)) {
        echo getSuggestions(foo);
    }
?>
  

注意:Pspell不是一个选项,因为我有PHP 5.X.X并且无法在服务器上安装它。

     

注意:PHP Spell Check没有令人反感的界面。

1 个答案:

答案 0 :(得分:1)

使用Levenshtein距离将是第一个想到的解决方案,我希望自动完成的混合方法,一个常见的拼写错误关键字集,然后Levenshtein和/或SOUNDEX会让你进入可用性棒球场,你是寻找。是的,这是一个项目。

这样的事情让我想到的另一条建议就是问问自己。 “我真正想做的是什么?”

通常情况下,全面的Google等级解决方案可能就像喷砂饼干一样,因为您的用例不是他们的。如果目标是以一种简单易懂的方式将访问者A提供给信息B,那么他们可以通过多种方式实现这一目标,这可能更简单和/或更好,而不是尝试逐字地逆向工程。