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

yipeiwu_com6年前PHP代码库

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

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

<?php
$aa = 1;
?>

b.php文件:

<?php
include a.php
function show(){
global $aa;
var_dump($aa);
}
?>

显示:null;

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

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

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

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

相关文章

PHP中时间加减函数strtotime用法分析

本文实例讲述了PHP中时间加减函数strtotime用法。分享给大家供大家参考,具体如下: 时间加减 <?php //获取本地 提取年份+1 $date=date("Y...

自制PHP框架之设计模式

为什么要使用设计模式? 设计模式,我的理解是为了达到“可复用”这个目标,而设计的一套相互协作的类。 感兴趣的读者可以阅读《Design Patterns: Elements of Reu...

PHP缩略图等比例无损压缩,可填充空白区域补充色

复制代码 代码如下: <?php error_reporting( E_ALL ); // 测试 imagezoom('1.jpg', '2.jpg', 400, 300, '#F...

php一句话cmdshell新型 (非一句话木马)

php一句话cmdshell新型 (非一句话木马)

复制代码 代码如下:<?php /*一个新型的php一句话cmdshell(非一句话木马) //原理:php运行时如果遇见字符``(键盘上~符号的下档键)总会尝试着执行``里面包含...

php实现约瑟夫问题的方法小结

本文实例总结了php实现约瑟夫问题的方法。分享给大家供大家参考。具体分析如下: 一群猴子排成一圈,按1,2,...,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始...