Symfony2:如何创建自己的翻译文件?

Symfony2: How to create own translation files?

我想创建自己的翻译文件。例如,我想要一个“my-application.en_EN.yml”在我的 Bundle 资源中的翻译文件夹中。

当我这样做时,我文件中的翻译不起作用。 只有当我将文件命名为标准名称“messages.en_EN.yml”时,它才会起作用。

但是我怎样才能有自己的命名呢?

messages.{language}.yml 是翻译文件的默认名称(YML 格式),Symfony 会自动加载翻译文件并在所有上下文中提供翻译。

如果翻译文件有不同的名称,则不同,在这种情况下,您必须在翻译字符串时添加文件名的第一部分(翻译domain)作为参数:

在控制器中:

$this->get('translator')->trans('my.message', array(), 'my-application');

在 Twig 模板中:

{{ 'my.message'|trans({}, 'my-application') }} 

更多信息参见官方文档: