pspell和aspell与php为德语
发布时间:2020-12-13 16:16:05 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试将pspell与aspell结合使用. 我已经这样安装了它: sudo apt-get install libpspell-dev sudo apt-get install php5-pspellsudo apt-get install aspell-de 之后,这是一个示例代码: $pspell_link = pspell_new("de");var_dump(pspell_check($pspel
我正在尝试将pspell与aspell结合使用.
我已经这样安装了它: sudo apt-get install libpspell-dev sudo apt-get install php5-pspell sudo apt-get install aspell-de 之后,这是一个示例代码: $pspell_link = pspell_new("de"); var_dump(pspell_check($pspell_link,"Verk?uferin")); if (!pspell_check($pspell_link,"Verk?uferin")) { $vorschlaege = pspell_suggest($pspell_link,"verk?uferin"); foreach ($vorschlaege as $vorschlag) { echo "M?gliche Schreibweise:" . $vorschlag . "<br>"; } } 有两个问题: >这个例子不懂德语变音符号 解决方法
尝试指定字符编码.我只需将第一行更改为:
$pspell_link = pspell_new("de","","utf-8"); 另外:即使这允许“Verk?uferin”通过拼写检查,我的服务器也无法正确输出带有变音符号的字母,直到我将此行放入我的php.ini文件中. default_charset = "utf-8" 有关使用PHP进行字符编码的更多信息,此页面看起来很有用: http://kore-nordmann.de/blog/php_charset_encoding_FAQ.html#which-charset-encoding-do-strings-have-in-php 至于你的第二个问题,虽然PHP使用的aspell包支持不区分大小写的匹配,但遗憾的是PHP不允许你选择该选项.这是我能提出的最佳解决方案: $pspell_link = pspell_new("de","utf-8"); $wort = "verk?uferin"; $richtig = pspell_check($pspell_link,$wort); if (!$richtig) { $vorschlaege = pspell_suggest($pspell_link,$wort); // make a copy of the array with all words in lowercase,so we can still // display the original suggestions if necessary $kleinschrift_vorschlaege = array_map('strtolower',$vorschlaege); // convert the original word to lowercase before comparing it $richtig = in_array(strtolower($wort),$kleinschrift_vorschlaege); } echo "'$wort' ist " . ($richtig ? "" : "nicht") . " richtig buchstabiert.<br/>"; if (!$richtig) { echo "M?gliche Schreibweisen:<br/>"; foreach ($vorschlaege as $vorschlag) { echo " " . $vorschlag . "<br/>"; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容