全局变量在函数外部定义,作用域为从变量定义处开始,到本程序文件的末尾。但和其他语言不同,php的全局变量不是自动设为可用的,在php中函数可以视为单独的程序片段,局部变量会覆盖全局变量的能见度,因此,在函数中无法直接调用全局变量。
如下:
<?php $one=100; $two=200; //定义全局变量 funcation demo(){ echo "运算结果:".($one+$two)."<br>"; //相当于在函数内部新声明两个没赋初值的函数变量,运算结果:0 } demo(); ?>
正确引用方式如下:
<?php $one=100; $two=200; //定义全局变量 funcation demo(){ global $one,$two; echo "运算结果:".($one+$two)."<br>"; //运算结果:300,使用到函数外部声明的全局变量 } demo(); ?>
引用$GLOBAL超全局变量数组
<?php $one=100; $two=200; //定义全局变量 funcation demo(){ echo "运算结果:".($GLOBAL[‘one‘]+$GLOBAL[‘$two‘])."<br>"; //运算结果:300,使用到函数外部声明的全局变量 } demo(); ?>
原文:http://www.cnblogs.com/Summer-jia/p/5223003.html