用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

PHP中unset销毁变量引发的问题

时间:2015-01-23  来源:西部数据  作者:西部数据

在php中我要销毁变量并内存释规范的写法就是直接使用unset()函数了,但是我们测试会发现unset只是当指向该值的所有变量(比如有引用变量指向该值)都被销毁后,地址才会被释放,下面我们来看几个实例,首先我们来看一个例子,代码如下:

  1. <?php 
  2.     $a = "hello springload";  
  3.     $b = $a;  
  4.     unset($b);  
  5.     echo $a//hello springload  
  6. ?> 

这个我们很清楚,unset($b),只是断开了变量名和值得绑定,但是一个有意思的问题出现了,代码如下:

  1. <?php 
  2.     $a = "hello springload";  
  3.     $b = $a;  
  4.     unset($a);  
  5.     echo $b;//hello springload  
  6. ?> 

为什么$a销毁了,为嘛$b的值还在呢?

注:unset()函数只有当指向该值的所有变量(比如有引用变量指向该值)都被销毁后.地址才会被释放,代码如下:

  1. <?php 
  2.     $a = "hello springload";  
  3.     $b = $a;  
  4.     unset($a);  
  5.     unset($b);  
  6.     echo $b;//输出空  
  7. ?> 
来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
栏目更新
栏目热门