在我的当前项目中,我使用了带有模板引擎小枝的Silex框架。我得把我的网站国际化。为此,我导入了所需的模块:
$app->register(new Silex\Provider\TranslationServiceProvider(), array(
'locale_fallbacks' => array('fr'),
));我在“翻译”文件夹中创建了YAML文件:
use Symfony\Component\Translation\Loader\YamlFileLoader;
$app['translator'] = $app->share($app->extend('translator', function($translator, $app) {
$translator->addLoader('yaml', new YamlFileLoader());
$translator->addResource('yaml', __DIR__.'/translation/en.yml', 'en');
$translator->addResource('yaml', __DIR__.'/translation/fr.yml', 'fr');
return $translator;
}));现在我知道我应该使用'gettext‘来提取'.po’文件中的小枝模板的字符串,但是我找不到方法。
有些人谈论"Twig Gettext Extractor“,但我认为Silex不支持这个模块。
谢谢你的帮助!
发布于 2013-10-20 11:14:21
翻译提供了2.1岁的.po加载器:
use Symfony\Component\Translation\Loader\PoFileLoader;
// ...
$translator->addLoader('po', new PoFileLoader());
$translator->addResource('po', __DIR__.'/translation/messages.en.po', 'en');
// ...该组件还提供其他gettext加载程序,有关完整列表,请参阅:https://github.com/symfony/Translation/tree/master/Loader
https://stackoverflow.com/questions/19137281
复制相似问题