php自定义函数变量,PHP自定义函数之变量函数

global关键字后面需要跟上变量名称。

$_html['user'];//这是在取出数组下标的一种表达式,也就是个地址,真正的变量名称是$

_html

扩展:

global声明后,需要把变量名称存储到底层的全局变量表中,使用时根据变量名查找该表(表存储方式:变量名称->Z_VALUE据结构地址),前提需要一个变量名。知道为什么是变量名,而不是地址了吧?

回复

@yongu:测试代码:$var1=123;$arr=['var2'=>'var1'];$GLOBALS[$arr['var2']]=456;echo$var1;回复

@yongu:http://www.php.net/manual/zh/reserved.variables.globals.php变量的名字就是数组的键回复

@D哥:明白了,那我数组的地址申明个变量,变量声明为全局数组就可以了回复

@yongu:参见$GLOBALS,用法:$GLOBALS['var']=123;结果是一样的。想象下$GLOBALS[$_html['user']]=123;假设$_html['user']='var2';等价于:$GLOBALS['var2']=123;等价于:global$var2=123;变量知道,数组[0][1]些是地址。global后面不能跟着地址,手册上怎么没标注,求解。授之于鱼。所谓的单元素全局不就是一个普通的全局变量啊?定义一个类,在类里定义静态变量,数组,就可全局引用了。尽量少用这些自己都搞不懂的语法,如果打算写伪开源程序倒是可以深入研究global后只能跟变量名,php把“

$_html['user']”当成是变量名了,报错正常。

global这个函数,我在手册上怎么没找到不能跟地址只能跟函数?求解

functiontest(){$a='100';$GLOBALS['myvar']=$a;//php不管什么变量,最终都会在GLOBALS数组中.并且是超全局的.}test();echo$myvar;

$GLOBALS['arr]=array('dog','cat','hongshu');

引用来自“D哥”的评论

global关键字后面需要跟上变量名称。

$_html['user'];//这是在取出数组下标的一种表达式,也就是个地址,真正的变量名称是$

_html

扩展:

global声明后,需要把变量名称存储到底层的全局变量表中,使用时根据变量名查找该表(函数表存储方式:变量名称->Z_VALUE据结构地址),前提需要一个变量名。知道为什么是变量名,而不是地址了吧?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值