Translation Silex细枝翻译Gettext

Translation Silex细枝翻译Gettext,translation,gettext,silex,Translation,Gettext,Silex,在我当前的项目中,我使用带有模板引擎细枝的Silex框架。我必须国际化我的网站。为此,我导入了所需的模块: $app->register(new Silex\Provider\TranslationServiceProvider(), array( 'locale_fallbacks' => array('fr'), )); 我在“translation”文件夹中创建了YAML文件: use Symfony\Component\Translation\Loader\

在我当前的项目中,我使用带有模板引擎细枝的Silex框架。我必须国际化我的网站。为此,我导入了所需的模块:

$app->register(new Silex\Provider\TranslationServiceProvider(), array(
        'locale_fallbacks' => array('fr'),
));
我在“translation”文件夹中创建了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提取器”,但我认为Silex不支持此模块


谢谢你的帮助

从2.1开始,翻译提供.po加载程序:

使用Symfony\Component\Translation\Loader\PoFileLoader;
// ...
$translator->addLoader('po',新的PoFileLoader());
$translator->addResource('po','DIR'./translation/messages.en.po','en');
// ...
该组件还提供其他gettext加载程序,有关完整列表,请参阅: