涉及phar文件的自动加载优先级是多少

hts6caw3  于 2021-09-29  发布在  Java
关注(0)|答案(1)|浏览(327)

我有以下设置:我有一个php项目,它使用一个本身依赖于某个库的框架。该库也在phpunit的依赖关系树中使用。由于框架中的版本是固定的(从我的Angular 来看),这对可以安装的phpunit的可能版本施加了限制(当作为composer依赖项安装时)。
如果我想使用phpunit的phar文件,那么应该捆绑依赖项。我想我在某个地方读到,phar中的内部库优先于要使用的外部库,但我再也找不到了。
那么:在将phpunit作为phar运行时,是否会首选捆绑依赖项?你是否偶然发现了这些信息的来源?

qvtsj1bj

qvtsj1bj1#

文件中(现在)对此进行了解释:
除了phpunit\framework\testcase等属于phpunit公共api的类之外,phpunit的phar发行版中捆绑的所有代码单元(包括所有依赖项,如供应商目录)都被移动到一个新的、不同的命名空间中。
phpunit的phar发行版不使用动态自动加载来加载捆绑的代码单元。相反,phar中捆绑的所有代码单元都是在启动时加载的。
您的问题促使我将此信息添加到刚才的文档中。谢谢

相关问题