本文章来给大家简单的介绍一下关于PHP 全局变量 Global关键字引用介绍,虽说评论跟文章相比,及其的简短,但原理却阐述的很明白,而且浅显易懂,尤其是对于有一些语言基础的人来说,是值得总结的。不卖关子,开始正题:
引用PHP手册的$GLOBALS的解释:
Global 变量:$GLOBALS
注意: $GLOBALS 在 PHP 3.0.0 及以后版本中适用。
由所有已定义全局变量组成的数组。变量名就是该数组的索引。
这是一个“superglobal”,或者可以描述为自动全局变量。
也就是说上面代码中的$var1和$GLOBALS['var1']是指的同一变量,而不是2个不同的变量!
全局变量举例
代码如下 | 复制代码 |
$pangbu = "pangbu"; |
解释
其实global $pangbu ;是$pangbu = &$_GLOBAL['pangbu ']的简写,
意思是$pangbu 是$_GLOBAL['pangbu ']的一个引用,至于引用怎么用,$pangbu 就怎么用了。
自己的一些笔记
之前一直没有搞明白 global 的用法 ,虽然会用但却一直在朦朦胧胧中糊里糊涂的,现在终于搞明白了。
.
为了了解更多Global的应用,请看下面php案例:
代码如下 | 复制代码 |
$url = "www.bKjia.c0m"; function get_url(){ echo "The blog is".$url; //这里获取不到$url,因为它只是一个未定义的局部变量 } get_url(); ?> |
上面的例子会报notice错误!
代码如下 | 复制代码 |
$url = "www.bKjia.c0m"; function get_url(){ global $url; echo "The blog url is ".$url; } get_url(); ?> |
上面这样用法就是对的,在函数中声明全局变量后,任何变量的所有引用变量都会指向到全局变量!
另外有必要说一下,全局数组$GLOBALS[],用上面的例子改写下就是这样:
代码如下 | 复制代码 |
$url = "www.bKjia.c0m"; function get_url(){ echo "The blog url is ".$GLOBALS['url']; } get_url(); ?> |
注意global声明变量不能复制,如 global $url = "www.hzhuti.com"; 这样是错误的