函数名: enchant_broker_set_ordering()
描述: enchant_broker_set_ordering() 函数用于设置拼写检查器引擎的优先级顺序。
用法: enchant_broker_set_ordering(EnchantBroker $broker, string $tag, string $ordering)
参数:
- $broker: EnchantBroker 对象,拼写检查器的代理。
- $tag: 字符串,拼写检查引擎的标签。
- $ordering: 字符串,用于设置拼写检查引擎的排序顺序。可以是 "prioritize"(优先),"match"(匹配),"default"(默认)之一。
返回值: 成功时返回true,失败时返回false。
示例:
// 创建拼写检查器代理
$broker = enchant_broker_init();
// 设置拼写检查器引擎的优先级顺序
enchant_broker_set_ordering($broker, "en_US", "prioritize, match");
// 获取英文(美国)字典
$dicts = enchant_broker_describe($broker);
$en_us_dict = null;
foreach ($dicts as $dict) {
if ($dict['lang'] == 'en_US') {
$en_us_dict = $dict['name'];
break;
}
}
// 创建拼写检查器
$speller = enchant_broker_request_dict($broker, $en_us_dict);
// 设置当前字典
enchant_broker_set_dict($broker, $speller);
// 检查拼写
$word = "aple";
if (enchant_dict_check($speller, $word)) {
echo "$word is spelled correctly.";
} else {
$suggestions = enchant_dict_suggest($speller, $word);
echo "$word is misspelled. Suggestions: " . implode(", ", $suggestions);
}
// 释放资源
enchant_broker_free_dict($speller);
enchant_broker_free($broker);
在此示例中,我们首先创建了一个拼写检查器代理并设置了拼写检查器引擎的优先级顺序。然后我们获取英文(美国)字典并创建了一个拼写检查器。最后,我们使用拼写检查器检测一个拼写错误的单词并提供纠正建议。在使用完毕后,我们清理并释放了资源。