我正在使用带有SwitftMailer的Symfony 1.4为电子邮件编写Web应用程序。我的网站将以多种语言提供,具体取决于所连接的用户。
我已经创建了一个使用__('some text')消息调用partials templates(get_partial)的邮件类。
工作正常:Symfony自动翻译部分用户文化,邮件与当前用户的文化一起发送。
我的问题是我想向不是当前用户的用户发送电子邮件,因此电子邮件的文化必须不同。
我想在获得部分之前更改当前的用户文化并在之后恢复,但这不是最干净的方式......
感谢您的帮助。
Sandrino
答案 0 :(得分:2)
您可以使用以下内容:
$new_lang = new sfI18N(
sfContext::getInstance()->getConfiguration(),
new sfNoCache(),
array('culture'=> 'pt'));
echo $new_lang->__('Read More');
不知道这是否是最好的答案,但它确实有效。
答案 1 :(得分:0)
感谢您的帮助。
与此同时,我发现了另一个我在symfony文档中找到的简单解决方案。
$catalogue = 'messages.pt'; // the name of the catalogue for translation
echo __("Text to translate", NULL, $catalogue);
希望可以帮助别人!