为了在 PHP 中获得 XLIFF/2 支持,在另一个答案中,建议使用 Symfony 2 Translation 组件。
于是我从 Github下载到一个目录../vendor/
中,然后天真地尝试使用它:
<?php
require_once '../vendor/Symfony/Component/Translation/Translator.php';
require_once '../vendor/Symfony/Component/Translation/MessageSelector.php';
require_once '../vendor/Symfony/Component/Translation/Loader/ArrayLoader.php';
use Symfony\Component\Translation\Translator;
use Symfony\Component\Translation\MessageSelector;
use Symfony\Component\Translation\Loader\ArrayLoader;
$translator = new Translator('fr_FR', new MessageSelector());
这不起作用,因为需要加载其他组件:
PHP Fatal error: Interface 'Symfony\\Component\\Translation\\TranslatorInterface' not found in /home/ec2-user/layout/vendor/Symfony/Component/Translation/Translator.php on line 25
现在,我可以为每个文件手动添加一个require_once
,直到满足所有依赖项,但我不确定这是否是正确的方法。
如何在非 Symfony 项目中使用单个 Symfony 2 组件?这是个坏主意吗?