为了账号安全,请及时绑定邮箱和手机立即绑定

如何为php函数添加拼写检查

如何为php函数添加拼写检查

PHP
小唯快跑啊 2021-11-26 16:30:54
我是编码新手,我一直在寻找一个脚本来创建 Anagrams 列表,我正在使用以下脚本,但它将显示由每个可能的组合组成的单词列表。我想向函数添加拼写检查,例如我在此处找到的 pspell_check() 访问https://www.php.net/manual/en/function.pspell-check.php这个想法是只显示英语词典中的单词。如果有人能告诉我如何向此代码添加拼写检查,将不胜感激。<?php // PHP program to print all  // permutations of a given string. /** * permutation function * @param str string to  *  calculate permutation for * @param l starting index * @param r end index */function permute($str, $l, $r) {     if ($l == $r)         echo $str. "\n";     else    {         for ($i = $l; $i <= $r; $i++)         {             $str = swap($str, $l, $i);             permute($str, $l + 1, $r);             $str = swap($str, $l, $i);         }     } } /** * Swap Characters at position * @param a string value * @param i position 1 * @param j position 2 * @return swapped string */function swap($a, $i, $j) {     $temp;     $charArray = str_split($a);     $temp = $charArray[$i] ;     $charArray[$i] = $charArray[$j];     $charArray[$j] = $temp;     return implode($charArray); } // Driver Code $str = "ANAGRAM"; $n = strlen($str); permute($str, 0, $n - 1); // This code is contributed by mits. ?>
查看完整描述

1 回答

?
慕神8447489

TA贡献1780条经验 获得超1个赞

<?php 

// PHP program to print all  

// permutations of a given string. 



/** 

* permutation function 

* @param str string to  

*  calculate permutation for 

* @param l starting index 

* @param r end index 

*/

function permute($str, $l, $r, $pspell_link) 

    if ($l == $r) {

        if (pspell_check($pspell_link, $str)) {

            echo $str. "\n"; 

        };

    }

    else

    { 

        for ($i = $l; $i <= $r; $i++) 

        { 

            $str = swap($str, $l, $i); 

            permute($str, $l + 1, $r, $pspell_link); 

            $str = swap($str, $l, $i); 

        } 

    } 


/** 

* Swap Characters at position 

* @param a string value 

* @param i position 1 

* @param j position 2 

* @return swapped string 

*/

function swap($a, $i, $j) 

    $temp; 

    $charArray = str_split($a); 

    $temp = $charArray[$i] ; 

    $charArray[$i] = $charArray[$j]; 

    $charArray[$j] = $temp; 

    return implode($charArray); 


// Driver Code 

$str = "ANAGRAM"; 

$n = strlen($str);


$pspell_link = pspell_new("en"); // pspell  has to be enabled on your web server

permute($str, 0, $n - 1, $pspell_link); 


// This code is contributed by mits. 

?>


查看完整回答
反对 回复 2021-11-26
  • 1 回答
  • 0 关注
  • 119 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信