>백엔드 개발 >PHP 튜토리얼 >php7 - php全局变量使用了composer自动加载不可用

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-07-06 13:53:491185검색

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

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.