PHP中为什么数组中可变变量可以这么用?
<?php
$arr=array('a'=>'aa','b'=>'bb','c'=>'cc');
foreach($arr as $key=>$v){
$$key=$v;
}
echo $a;//aa
$$key然后变量应该是aa;但是输出a才有内容
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
眼花了吧...
$v 才是 'aa'
$$这个是可变变量的用法,$$key 等价于 $a($key = 'a'),然后此时的$v又等于'aa',然后就$a = 'aa';相当于在循环体内定义一个一个$a的变量赋值了 ‘aa’。。。
$v='aa',$key ='a',$$key = $a,$key = $v 所以$a = 'aa'.