欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php7 - php全局变量使用了composer自动加载不可用

程序员文章站 2022-05-13 20:14:43
...
这个属于历史遗留代码,原程序员直接在配置文件实例化数据库实例

$db = new db();

这种代码如果是正常用require/include来包含没神马问题,他判断时候时候是取$GLOBALS['db']来判断。

因为文件有些多,现在想复用部分模型,因为有包含关系,得一个一个去试,然后包含进来,想弄成自动加载,所以我用了composer自动加载, 使用composer自动加载的文件$GLOBALS['db']为空,我平时不用这个全局参数,不清楚这个东西神马情况。

这个问题我自己是已经解决了,就是$db = new db(),改成$GLOBALS['db']就可以了,就是显式的去赋值。

不明白为什么使用手动包含的$db会存在,使用composer自动加载的$db就会没掉,请大神指导。

回复内容:

这个属于历史遗留代码,原程序员直接在配置文件实例化数据库实例

$db = new db();

这种代码如果是正常用require/include来包含没神马问题,他判断时候时候是取$GLOBALS['db']来判断。

因为文件有些多,现在想复用部分模型,因为有包含关系,得一个一个去试,然后包含进来,想弄成自动加载,所以我用了composer自动加载, 使用composer自动加载的文件$GLOBALS['db']为空,我平时不用这个全局参数,不清楚这个东西神马情况。

这个问题我自己是已经解决了,就是$db = new db(),改成$GLOBALS['db']就可以了,就是显式的去赋值。

不明白为什么使用手动包含的$db会存在,使用composer自动加载的$db就会没掉,请大神指导。

相关标签: php php7