Symfony翻译器和细枝

Symfony翻译器和细枝,symfony,twig,Symfony,Twig,我有一个基于Twig的模板库,但我还没有安装整个Symfony库。我想在我的项目中使用Symfony的翻译,不安装整个Symfony是否可能?目前我已经导入了 "twig/twig": "~1.0", "symfony/translation": "^3.0", "symfony/yaml": "^3.0", 如果可能,我如何“启用”转换器?您可以将转换器用作独立组件。如以下文件所述: 因此,您需要创建一种机制来加载目录,并将TWIG中的转换器用作自定

我有一个基于Twig的模板库,但我还没有安装整个Symfony库。我想在我的项目中使用Symfony的翻译,不安装整个Symfony是否可能?目前我已经导入了

 "twig/twig":      "~1.0",     
 "symfony/translation":    "^3.0",
 "symfony/yaml":      "^3.0",

如果可能,我如何“启用”转换器?

您可以将转换器用作独立组件。如以下文件所述:

因此,您需要创建一种机制来加载目录,并将TWIG中的转换器用作自定义过滤器


希望这有帮助

是的,这真的很有帮助!只是,我遇到了另一个问题,我的路径是vendor\symfony\translation\。。。我得到的错误接口“Symfony\Component\Translation\TranslatorInterface”未找到。也许我错过了安装一些东西?似乎是正确的。我有你说的路径下的接口。你需要“需要”任何翻译程序的文件,还是以不同的方式配置依赖关系?它只是在Translator.php中找不到所需的Translator接口。该接口正确地位于下载包的repo中。尝试重新加载php自动加载程序或检查自动加载程序中的文件。谢谢!这就是问题所在,我必须在任何其他代码或文件之前要求
vendor/autoload.php
文件。
use Symfony\Component\Translation\Translator;
use Symfony\Component\Translation\Loader\ArrayLoader;

$translator = new Translator('fr_FR');
$translator->addLoader('array', new ArrayLoader());
$translator->addResource('array', array(
    'Symfony is great!' => 'J\'aime Symfony!',
), 'fr_FR');

var_dump($translator->trans('Symfony is great!'));