Symfony2拆分翻译文件

时间:2014-09-22 11:19:21

标签: symfony

我在Symfony中创建了一个多语言应用程序。在这一点上,我有两种语言,德语和英语。我在我的包中创建了两个文件。

应用\ UserBundle \资源\翻译\ messages.de.xlf

<?xml version="1.0"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
    <file source-language="en" datatype="plaintext" original="file.ext">
        <body>
            <trans-unit id="1">
                <source>msg.email</source>
                <target>E-Mail</target>
            </trans-unit>
         </body>
      </file>
 </xliff>

应用\ UserBundle \资源\翻译\ messages.en.xlf

<?xml version="1.0"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
    <file source-language="en" datatype="plaintext" original="file.ext">
        <body>
            <trans-unit id="1">
                <source>msg.email</source>
                <target>Email</target>
            </trans-unit>
         </body>
      </file>
 </xliff>

现在我有大约200个翻译字符串。我可以将翻译文件拆分成多个文件吗?例如“messages.en-1.xlf,messages.de-1.xlf,messages.en-2.xlf,messages.de-2.xlf”......

1 个答案:

答案 0 :(得分:1)

您可以使用域名。您的所有文件都将被命名为domain1.en.xlfdomain1.de.xlfdomain2.en.xlfdomain2.de.xlf等等。

您可以在此处找到更多文档:http://symfony.com/doc/current/components/translation/introduction.html#using-message-domains。 在这里:http://symfony.com/doc/current/book/translation.html#translations-in-templates

此外,您还需要使用以下内容更改模板:

{{ message|trans({here_you_can_put_your_parameters_or_use_empty_array}, 'domain1') }}
相关问题