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 动态执行带有参数的类方法

官方手册给出了以下范例: 复制代码 代码如下:<?php // 使用了NameSpace的例子 namespace Foobar; class Foo { static publi...

php+ajax无刷新上传图片实例代码

php+ajax无刷新上传图片实例代码

本文分享了php结合ajax实现无刷新上传图片的实例代码,分享给大家,希望大家可以和小编一起学习学习,共同进步。 1.引入文件 <!--图片上传begin--> <...

Opcache导致php-fpm崩溃nginx返回502

我这个博客为了提高运行效率在vps上装了opcache扩展,结果发现有个页面返回502,其他页面正常。 检查了php-fpm日志,发现是php-fpm子进程不知道为什么会崩溃,然后把op...

c#中的实现php中的preg_replace

把php preg_replace 用c# 重写了一下。 PHP语言的功能非常强大,主要就是靠它强大的函数来作支撑。我们在这篇文章中将会为大家详细讲解有关PHP函数preg_replac...

PHP获取表单数据与HTML嵌入PHP脚本的实现

 php接受通过HTML表单提交的信息时,会将提交的数据保存在全局数组中,我们可以调用系统特定的自动全局变量数组来获取这些值。 常用的自动全局变量如下所示: 1、GET方式...