Global和Globals

$a= ‘1234‘;
echo $GLOBALS[‘a‘];//1234

$a = ‘abc‘;
$GLOBAS[‘b‘]=‘123‘;
function showVar(){
echo $a;//什么也输不出来
echo $b;//123(全局变量)
echo $GLOBALS[‘a‘];//abc
}

//$GLOBALS[‘a‘] 是外部var的全局变量本身
//global $var; 是外部$var的同名引用
//global $var 相当于 &$GLOBALS[‘var‘] 
时间: 2025-01-02 14:05:27

Global和Globals的相关文章

PHP中global与$GLOBALS['']的区别

+++ 探讨(一)+++++++++++++++++++++++++++++++++++++++ 很多人都认为global和$GLOBALS[]只是写法上面的差别,其实不然. 根据官方的解释是 $GLOBALS['var'] 是外部的全局变量$var本身. global $var 是外部$var的同名引用或者指针.(错误:是个别名引用而已,非指针!!!) 举例说明一下: <?php $var1 = 1; $var2 = 2; function test() { $GLOBALS['var2']

PHP里global与$GLOBALS[&#39;&#39;]的区别

根据官方的解释是 $GLOBALS['var'] 是外部的全局变量$var本身. global $var 是外部$var的同名引用,即这两个变量指向同一个值. 1 <?php 2 $var1 = 1; 3 $var2 = 2; 4 function test() { 5 $GLOBALS['var2'] = &$GLOBALS['var1']; 6 } 7 8 test(); 9 echo $var2; 10 ?> 打印结果为1 <?php $var1 = 1; $var2 =

关于global和$GLOBALS[]的一些实践---我有小尾巴

在我闲的蛋疼的时候,想起了全局变量,于是就果断百度谷歌,搜索结果还是蛮理想的,结果点击一看才知道,我擦,有么有这么坑爹,全他妈一样,连错别字都是一样滴,这时我就想吐槽,不由想到吐槽神人熬尼玛.俺一张嘴...妈蛋,只有口水没有草灭办法,就默默的自己测试一把!------这是我的小尾巴,你们看到了吗?啥?没有小尾巴...艾玛,我的小尾巴呢!代码示例:测试1: 1 <?php 2 function test(){ 3 global $var; 4 $var ++; 5 } 6 $var = 1; 7

(转)php中global和$GLOBALS[]的分析之一

PHP 的全局变量和 C 语言有一点点不同,在 C 语言中,全局变量在函数中自动生效,除非被局部变量覆盖 这可能引起一些问题,有些人可能漫不经心的改变一个全局变量.PHP 中全局变量在函数中使用时必须申明为全局(注意,Global这个关键字在函数中定义才有用). 1:Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require的所有文件. 复制代码代码如下: <?PHP $a=123; function aa() { Global

PHP中global与$GLOBALS的区别

单一个global是一个关键字,通常附加在变量前,用于将变量声明至全局作用域: $GLOBALS是预定义的超全局变量,把变量扔到里边的话一样可以带到全局去. $GLOBALS 是一个关联数组,每一个变量为一个元素,键名对应变量名,值对应变量的内容.$GLOBALS 之所以在全局范围内存在,是因为 $GLOBALS 是一个超全局变量. 细节:PHP释放全局变量注意事项 global $var : 指函数外部同名变量的引用 $GLOBALS['var'] : 指函数外部变量本身 global $va

PHP中的全局变量global和$GLOBALS的区别

1.global Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require的所有文件. 但是在函数体内定义的global变量,函数体内可以使用,在函数体外定义的global变量不能在函数体内使用,具体看下面示例. (1)在函数体内定义global变量,函数体内可以使用. <?PHP $a=123; function aa() { Global $a; //把$a定义为global变量. echo $a; //调用函数体外的变量

全局变量:global与$GLOBALS的区别和使用

今天在写框架的时候想把SaeMySQL初始化之后作为全局变量使用.但是后来发现PHP中的全局变量和Java或者OC中的全局变量还是有较大区别的.下面记录一下php里面的global的使用相关注意事项.1.有些场合需要全局变量的出现,如下例子: <?php $name="why";//定义变量name,并初始化 function echoName() { //试图引用函数外面的变量 echo "myname is ".$name."<br>

关于PHP中的全局变量global和$GLOBALS的不同区分

1.global Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require的所有文件. 但是在函数体内定义的global变量,函数体内可以使用,在函数体外定义的global变量不能在函数体内使用,具体看下面示例. (1)在函数体内定义global变量,函数体内可以使用. <?PHP $a=123; function aa() { Global $a; //把$a定义为global变量. echo $a; //调用函数体外的变量

global vs $GLOBALS

function test() { global $a; unset($a); } $a = 1; test(); echo $a; //1 明明是unset了呀,为什么还会打印出来呢? 因为在函数里面的变量只是私有的,unset的确是起到了作用,但它也仅仅是unset了一个global 的值:因为在函数内部,global申明一个变量只是产生了一个指向函数外部变量的别名变量(仅仅只是映射)而已,而不是真正的函数外部变量:$GLOBALS[]才调用是外部的变量,函数内外才会始终保持一致! 原文地址