首页 理论教育 PHP编程新手自学手册:变量范围及其重要性

PHP编程新手自学手册:变量范围及其重要性

时间:2023-11-05 理论教育 版权反馈
【摘要】:变量必须在有效范围内使用,如果变量超出有效范围,就失去其意义了。变量范围有如下三种:1)局部变量:即在函数的内部定义的变量,其作用域是所在函数。PHP中全局变量在函数中使用时必须申明为全局。

PHP编程新手自学手册:变量范围及其重要性

在使用变量时,一定要符合变量的规则。变量必须在有效范围内使用,如果变量超出有效范围,就失去其意义了。变量范围有如下三种:

1)局部变量:即在函数的内部定义的变量,其作用域是所在函数。

2)全局变量:即被定义在所有函数以外的变量,其作用域是整个PHP文件,但是在用户自定义函数内部是不可用的。想在用户自定义函数内部使用全局变量,要使用global关键词声明。

3)超级变量:在任何位置都可用的特定数量的变量,并且可以从脚本的任何位置访问它们。

下面来看一个代码,以帮助读者更好地理解变量的范围,其代码如下:

978-7-111-39239-2-Part01-244.jpg

这段代码不会有任何输出,因为echo语句引用了一个局部版本的变量$a,而且在这个范围内,它并没有被赋值。你可能注意到PHP的全局变量和C语言有一点不同。因为在C语言中,全局变量在函数中自动生效,除非被局部变量覆盖。这可能引起一些问题,有些人可能漫不经心地改变一个全局变量。PHP中全局变量在函数中使用时必须申明为全局。

实例8:访问全局变量

在局部范围内访问全局变量时,需要使用一个关键字,下面通过一个代码来演示此功能,其代码【光盘:源代码/第3章/bian.php】如下:

978-7-111-39239-2-Part01-245.jpg(www.xing528.com)

将上述代码文件保存到服务器的环境下,运行浏览后得到如图3-6所示的结果。

978-7-111-39239-2-Part01-246.jpg

图3-6 变量

多学一招

除了上面方法可以访问全局变量之外,用户还可以通过$GLOBALS['b']方式访问全局变量,$GLOBALS之所以在全局范围内存在,是因为$GLOBALS是一个超全局变量,请看下面的代码【光盘:源代码/第3章/bian1.php】:

978-7-111-39239-2-Part01-247.jpg

978-7-111-39239-2-Part01-248.jpg

上面的程序运行后,得到的效果和实例中的效果一样,这就是超全局变量的魅力。再看下面的一段代码,让读者对超全局变量有更深层次的理解。其代码【光盘:源代码/第3章/bian2.php】如下:

978-7-111-39239-2-Part01-249.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈