码迷,mamicode.com
首页 > Web开发 > 详细

php中unset一个变量之后, 通过引用赋值引用这个变量的变量会被unset吗?

时间:2017-09-07 10:12:52      阅读:285      评论:0      收藏:0      [点我收藏+]

标签:通过   php   变量   not   赋值   set   unset   函数   影响   

在php中变量的赋值分为按值赋值,  和引用赋值.

在按值赋值中, $a = val;  $b = $a ; 可以看成$a = val; $b =val;变量b被赋予a的值之后,  a和b便没有任何的引用关系了, 此时改变其中任意一个值, 另外一个值不会受到影响.

在引用传值种, $a = val; $b = &$a;  也可以看成$a = val; $b =val; 不过变量a和b还要满足一个条件就是必须相等, 因为两个变量有着共同的引用, 当一个值改变时, 另外一个值也跟着改变.  如 在给变量b赋值,  $b = val2;  并打印a和b,  发现a, b的值都为val2.  

 

在通过引用赋值的中 $a = val; $b = &$a; 如果通过unset()函数来销毁a,  并输出a, b , a变量会提示变量not  definded,那么b变量会得到什么结果呢?

打印变量b仍然会得到val, 因为unset()在销毁a时,  会检查a对应的值是否还存在其他的引用,  如果存在,  则只销毁变量a不销毁a对应的值.

php中unset一个变量之后, 通过引用赋值引用这个变量的变量会被unset吗?

标签:通过   php   变量   not   赋值   set   unset   函数   影响   

原文地址:http://www.cnblogs.com/DolphWang/p/7487896.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!