您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> php编程 >> 正文

php多次include后导致全局变量global失效的解决方法

作者:佚名    责任编辑:admin    更新时间:    2015-10-15 08:52:21

这篇文章主要介绍了php多次include后导致全局变量global失效的解决方法,实例分析了$GLOBALS失效的原理与解决方法,具有一定参考借鉴价值,需要的朋友可以参考下    

本文实例讲述了php多次include后导致全局变量global失效的解决方法。分享给大家供大家参考。具体分析如下:

在多个文件中,文件一个接一个include,但最后一个文件里的函数使用global后却无法引用全局变量。例如:
a.php文件:

? 1 2 3 <?php $aa = 1; ?>

b.php文件:

? 1 2 3 4 5 6 7 <?php include a.php function show(){ global $aa; var_dump($aa); } ?>

显示:null;

这种失效是由于多种原因造成的。一个有效的方法是,如果你决定将一个变量当作多个文件的全局变量,那么使用$GLOBALS数组总是有效的。比如上例中的a.php:

? 1 2 3 <?php $GLOBALS['aa'] = 1; ?>

然后就可以在多个文件的函数、方法中引用这个变量了。

希望本文所述对大家的php程序设计有所帮助。