Rumah >pembangunan bahagian belakang >tutorial php >php7 - php全局变量使用了composer自动加载不可用

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

WBOY
WBOYasal
2016-07-06 13:53:491158semak imbas

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

$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就会没掉,请大神指导。

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn