Mis*_*iur 28 localization gettext symfony twig
我想这样做:
$this->get('translator')->trans('notice.unregistered', array(), 'index');
Run Code Online (Sandbox Code Playgroud)
在Twig模板内部,所以我不必将其作为参数传递.怎么样?
kri*_*hna 63
你也可以使用trans过滤器:
{{ 'translationkey'|trans({},'domain') }}
Run Code Online (Sandbox Code Playgroud)
Mis*_*iur 27
解决方案是:
{% trans from "domain" %}text{% endtrans %}
Run Code Online (Sandbox Code Playgroud)
您可以添加自定义函数来更改模板中的域.
添加你的功能:
$getTextdomain = new Twig_SimpleFunction('get_textdomain', function () {
return textdomain(NULL);
});
$setTextdomain = new Twig_SimpleFunction('set_textdomain', function ($domain) {
textdomain($domain);
});
$twig->addFunction($getTextdomain);
$twig->addFunction($setTextdomain);
Run Code Online (Sandbox Code Playgroud)
然后使用它:
{% set originalDomain = get_textdomain() %}
{{ set_textdomain('errors') }}
{% trans "My error message" %}
{{ set_textdomain(originalDomain) }}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
28448 次 |
| 最近记录: |