Php,魔法库,如何选择字典(如aspell或myspell)



我正在尝试魔法咒语库。

我有一个运行良好的脚本,但我可以在几个词典(Aspell或Myspell)之间进行选择

因此,当我enchant_broker_set_dict_path尝试此功能时,它似乎没有任何效果。而且这个函数不在phpdoc中,为什么?

在 Linux 上试用,使用 php 5.3

这是我的脚本

$words=array('test', 'test');
$suggestions = array();
$enchant = enchant_broker_init();
if (enchant_broker_dict_exists($enchant, $lang)) {
        $dict = enchant_broker_request_dict($enchant, $lang);
        foreach ($words as $word) {
            $correct = enchant_dict_check($dict, $word);
            if (!$correct) {
                $suggs = enchant_dict_suggest($dict, $word);
                if (!is_array($suggs)) {
                    $suggs = array();
                }
                $suggestions[$word] = $suggs;
            }
        }
        enchant_broker_free_dict($dict);
        enchant_broker_free($enchant);
    } else {
        enchant_broker_free($enchant);
        throw new Exception("Could not find dictionary. Code: " . $lang);
    }

Php 应该启用php_enchant扩展才能使用这些函数。

使用 php.ini 设置 php 以启用此扩展。

如果你在窗户上,那么将扩展名=php_enchant.dll添加到您的 php.ini 文件中。

此外,文档或附魔命令位于http://www.php.net/manual/en/function.enchant-broker-init.php

你在代码中的什么地方使用它?
有一个错误,如果你在enchant_broker_set_dict_path之前打电话给enchant_broker_get_dict_path,它将无法正常工作。
这也可能有助于:http://blog.iwanluijks.nl/?!=/post/1-using-enchant-with-php-on-windowspart-1.html

如果您使用 PECL,请注意您需要版本 1.1.0 或更高版本,因为该版本中包含 enchant_broker_set_dict_path 和enchant_broker_get_dict_path。
http://pecl.php.net/package/enchant/1.1.0

最新更新