让我在前面说,我通常不是PHP开发人员,在Symfony2方面完全是初学者。我有点投入到这个项目中,我们的最后期限很紧。
解决了这个问题,我的问题是:
在我的公司,我们有一个内部API的PHP库,这是旧的;它不使用名称空间,也不真正遵循任何标准命名约定,如PSR-0或PEAR。然而,我需要在我们的Symfony2项目中使用它。Symfony2显然在很大程度上依赖于名称空间。如果我不更新库以遵循"新"约定,我会彻底完蛋吗?或者我无论如何都可以使用它吗?问题是,这是一个相当大的图书馆,我们现在根本没有时间这么做(早就应该有人这么做了,但这是另一个话题…)
从理论上讲,我可以把lib放在vendor/下,并在我的捆绑包中使用好的旧requires/includes吗?这行得通吗?我这样做会让一群愤怒的Symfony/PHP开发人员追上我吗?
或者,有没有我不知道的更好的方法?
您可以按照自己的建议执行操作,甚至可以使用MapClassLoader
,并为其提供类和文件之间的静态映射,这样您甚至不需要库中的文件。您不必手动编写此映射,您可以使用类映射生成器