PHP拼写检查和建议类似于Google';s";你的意思是:“什么?”;

PHP拼写检查和建议类似于Google';s";你的意思是:“什么?”;,php,google-search,spell-checking,Php,Google Search,Spell Checking,我正在尝试使用一个类似于谷歌的“你的意思是什么:”使用PHP的系统对用户的查询进行拼写检查 有没有一种方法可以通过插件或API实现这一点?如果没有,你有什么建议 可能的简化代码? 美国石油学会 插件 注意:这不是一个选项,因为我有PHP5.X.X,无法在服务器上安装它 注意:没有disired接口 使用Levenshtein Distance将是第一个想到的解决方案,我希望采用自动完成的混合方法,一个常见的拼写错误的关键字集,然后Levenshtein和/或SOUNDEX将让你进入你

我正在尝试使用一个类似于谷歌的“你的意思是什么:”使用PHP的系统对用户的查询进行拼写检查

有没有一种方法可以通过插件或API实现这一点?如果没有,你有什么建议

可能的简化代码? 美国石油学会

插件

注意:这不是一个选项,因为我有PHP5.X.X,无法在服务器上安装它

注意:没有disired接口


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

另一条建议是问你自己。“我真正想做的是什么?”


通常情况下,一个完整的谷歌级解决方案可能就像一个汤饼干,因为你的用例不是他们的。如果目标是让访问者A以一种非常简单的方式访问信息B,有很多方法可以实现这一点,这对您来说可能更简单和/或更好,而不是试图逐字逐句地进行逆向工程。

这是一个非常好的问题,但我认为此数据/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);
    }
?>