相关疑难解决方法(0)

Symfony2中翻译的高级自定义

我有一个Symfony2项目,我正在使用Translation组件来翻译文本.我在yml文件中的所有翻译都是这样的

translation-identifier: Translated text here
Run Code Online (Sandbox Code Playgroud)

翻译文本看起来像这样 Twig

'translation-identifier'|trans({}, 'domain')
Run Code Online (Sandbox Code Playgroud)

问题是,在某些情况下,我希望有两个不同的文本用于相同的翻译(不是用于复数).以下是我希望它的工作方式:

  1. yml文件中定义两个文本,用于需要具有不同文本的翻译.每个人都有自己独特的后缀

    translation-identifier-suffix1
    
    translation-identifier-suffix2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 定义一个全局规则,定义应该选择哪个后缀.Psuedocode如下:

     public function getSuffix() {
       return rand(0, 10) < 5 ? '-suffix1' : '-suffix2';
     }
    
    Run Code Online (Sandbox Code Playgroud)
  3. Twig(和PHP)看起来一样 - 我仍然只指定没有后缀的标识符.然后,翻译器会将后缀附加到标识符并尝试查找匹配项.如果没有匹配,它将尝试再次找到匹配而没有后缀.

php translation symfony

7
推荐指数
3
解决办法
3978
查看次数

标签 统计

php ×1

symfony ×1

translation ×1