【发布时间】:2013-04-17 15:01:04
【问题描述】:
我目前正在将 Symfony 验证器组件集成到自定义 PHP 应用程序中。到目前为止,一切都很好,我可以验证我的用户输入。
现在我想将验证消息翻译到另一个语言环境并集成了翻译组件(无论如何都需要它,因为 DefaultTranslator 中的 TranslatorInterface 具有依赖性)。
默认 Translator 仅支持硬编码到 ValidationConstraints 中的语言环境。据我所知,我需要指定一个自定义 Translator 实例,该实例从 Validator 组件的 xliff 文件中加载字符串。
这是我得到的结果,但遗憾的是无法加载德语翻译:
$translator = new Translator('de_DE');
$translator->setFallbackLocale('en_GB');
$translator->addLoader('xliff', new XliffFileLoader());
$builder = new ValidatorBuilder();
$validator = $builder
->setTranslator($translator)
->getValidator();
$violations = $validator->validateValue($input, self::getValidationConstraints());
有什么我可能在这里遗漏的建议吗?
【问题讨论】:
标签: symfony symfony-components