当使用 symfony 翻译模块翻译一段代码时,symfony 似乎忽略了花括号。 <trans-unit id="test"> <source>test<source> <target> test {test} </target></trans-unit>使用以下Translator配置时。$translator = new Translator("en");$translator->addLoader('xlf', new XliffFileLoader());$translator->addResource('xlf', 'translations/messages+intl-icu.en.xlf', 'en');$translator->setFallbackLocales(["en"]);$message = $translator->trans("test", ["test" => "error"], null, "en");产生以下翻译:error {error}虽然我期望test error这是我的配置中的错误还是我误解了应该如何进行替换?我的 symfony 版本如下。"symfony/translation": "v5.0.2","symfony/config": "v5.0.2"根据文档(https://symfony.com/doc/current/translation/message_format.html)Everything within the curly braces ({...}) is processed by the formatter and replaced by its placeholder:这是 Symfony 中的错误还是我用错了?
1 回答

杨魅力
TA贡献1811条经验 获得超6个赞
我遇到了同样的问题并问:https ://github.com/symfony/symfony/issues/36461
答:您需要['{test}' => 'error']
作为参数数组传递,包括键字符串中的花括号。
- 1 回答
- 0 关注
- 112 浏览
添加回答
举报
0/150
提交
取消