假设我有一个包裹sprout_services
我正在使用的另外 3 个软件包require
。一旦第一个运行的包需要它,它就会在全局空间中打开。
从我的应用程序中的任何地方,我都可以做new SproutServices\ServiceLocator
。现在,一旦我有了第二个包就初始化了它sprout_services
,我将不可避免地遇到以下问题:Class has already been declared
因为我试图重新定义之前自动加载的相同类。
我怎样才能做到这一点sprout_services
包在全局状态下打开而不覆盖它并陷入“嘿,我是第一个来的!”的冲突?
我无缘无故地惊慌失措。
一旦依赖关系被解析并被 Composer 包含,它将进入全局命名空间并且不能被覆盖。 Composer 知道并看到这一点,并且不会尝试重新加载。
我不确定如果我的类名对于不同版本相同会发生什么,我会在发现更多信息时更新此答案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)