PHP引用变量(面试题1)

什么是引用变量?

用不同的名字访问同一个变量的内容。
$a =&$b;($a 和 $b永远指向同一个地址。unset只会取消引用,不会销毁空间。对象本身就是引用传递。)

<?php
//写出程序的输出结果
$data = ['a','b','c'];
foreach($data as $k=>$v)
{
    $v = &$data[$k];
}

//$k = 0;$v='a'; $v = &$data[0];
第一次$v引用赋值$data[0];第一次循环结束$data值不变 ['a','b','c'];
//$k = 0;$v='b';
第二次$v的值变为了‘b’,而$data[0]与$v相互引用,故$data[0]= 'b';
$v = &$data[1];
这个时候$v是$data[1]引用,$v不再是$data[0]的引用 故$data的值为 ['b','b','c'];
//$k = 0;$v='c'; 此次 $data[1]变为c,
$v = &$data[2];$data[2]的值不变,故$data的值为['b','c','c'];
程序结束时unset($v)并不会影响别的引用!


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 《裕语言》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 10...
    叶染柒丶阅读 28,538评论 5 19
  • 我有一个同学,曾经和人共同做过一个公众号。公众号没做多久,他们两位主笔就走到了一起。青年人恋爱的种种,无需多言,是...
    削削削削小萝卜阅读 734评论 0 0
  • 一: 1、我们的瓦,是美丽的瓦,不能和寻常的瓦一概而论。我们的是琉璃瓦 2、西方人对于大眼睛,长睫毛的崇拜传入中土...
    任桔子阅读 2,656评论 1 0
  • 【公司】宁波慈星有限公司 【姓名】张颖 【组别】235期六项精进【乐观二组】 【日精进打卡第79天】 【知~学习】...
    ying1026阅读 1,171评论 0 0

友情链接更多精彩内容