9、变量的作用域--(全局变量和局部变量)
来源:互联网 发布:阿里云 进销存 编辑:程序博客网 时间:2024/05/02 06:46
变量的作用域
通常说作用域,有2个:
局部作用域:只能在所定义的函数范围内使用。
全局作用域:在函数的“外部”范围使用。
——php中,局部和全局作用域是不重叠的
——js中,全局作用域是包括局部作用域的
但还有两个:
超全局:就是在函数的内部和外部都可以使用。
超全局变量只有系统内部预定义的那几个,我们不能再程序中创建超全局变量。
静态局部作用域:其实也是局部,但多一个特征:数据能够在函数退出后仍然保持不丢失。
局部访问全局变量的特定语法
1,在局部范围内,使用global关键字对全局变量进行一次“声明”,则就可以使用了:
语法:global $变量名;
说明:
1)实际上,函数中的global 语句,其实是创建了一个跟外部变量同名的局部变量,并通过“引用”的方式指向了外部变量的数据区
2)在函数中(局部范围),使用$GLOBALS超全局数组来引用(使用)全局变量:
$GLOBALS超全局数组的作用是用于存储所有全局变量的数据:变量名为下标,变量值为对应元素值。
但通过 $GLOBALS操作全局变量,是直接操作(而不是引用操作),即如果unset该对应元素,则全局变量对应变量也被unset
3)实际上,我们还可以在函数内部直接使用$GLOBALS数组,添加元素的方式来创建全局变量,自然也就类似局部使用全局
全局访问局部变量的特定语句
通过引用传递的方式向形参传递一个引用实参变量
$v1 = 10;
function f1( &$p1, $p2){ ...... } //$p1是函数的形参,也即就是函数的内部(局部)变量
$v2 = f1( $v1, 10); //此时我们认为$v1就可以使用函数中$p1的值。
使用函数的引用返回形式:见前面引用传递的方式返回数据
函数中使用global关键字来首次引用一个全局变量,则函数结束后在全局范围就可以使用该变量了
- 9、变量的作用域--(全局变量和局部变量)
- 局部变量和全局变量的作用域
- c++中全局变量,全局静态变量,局部静态变量,局部变量的作用域和生命周期
- 全局变量和局部变量作用域
- C++的局部变量和全局变量的作用域
- 局部变量和全局变量的作用域的首次理解
- js全局变量和局部变量的作用域分析
- 作用域、局部变量、全局变量
- 局部变量,全局变量,静态变量的作用域,生命期?
- 【JavaScript】(5)匿名函数的定义方式、变量的作用域(局部变量,全局变量)
- C/C++全局变量和局部变量作用域问题
- 局部变量和全局变量(成员变量)
- js 作用域 .局部变量,全局变量
- static的作用(修饰函数、局部变量、全局变量)
- 局部变量和全局变量
- 局部变量和全局变量
- 全局变量和局部变量
- 局部变量和全局变量
- 《GNU make项目管理》笔记--规则(1)
- android导进去出现红色的叹号
- 关于多线程自己整理(大牛勿喷)
- c++中的浅拷贝和深度拷贝
- 住兹族酌浊紫足撰滋祖做足赚宗状字阻篆
- 9、变量的作用域--(全局变量和局部变量)
- 基于Socket的Android手机视频实时传输
- 移动端程序员感慨的那些UI小事--闲来吐槽
- 解决php项目中session失效的方法
- hpuoj 1101: 密码截获
- Debug方式
- 兹左邹追总抓锥住着专子住祖拽字撞滓柞
- OpenCV边缘检测
- ubuntu14.04-flash插件安装