PHP中unset銷毀變量引發的問題
來源:程序員人生 發布時間:2014-03-04 12:26:44 閱讀次數:3326次
在php中我要銷毀變量并內存釋規范的寫法就是直接使用unset()函數了,但是我們測試會發現unset只是當指向該值的所有變量(比如有引用變量指向該值)都被銷毀后,地址才會被釋放,下面我們來看幾個實例,首先我們來看一個例子,代碼如下:
- <?php
- $a = "hello springload";
- $b = $a;
- unset($b);
- echo $a;
- ?>
這個我們很清楚,unset($b),只是斷開了變量名和值得綁定,但是一個有意思的問題出現了,代碼如下:
- <?php
- $a = "hello springload";
- $b = $a;
- unset($a);
- echo $b;
- ?>
為什么$a銷毀了,為嘛$b的值還在呢?
注:unset()函數只有當指向該值的所有變量(比如有引用變量指向該值)都被銷毀后.地址才會被釋放,代碼如下:
- <?php
- $a = "hello springload";
- $b = $a;
- unset($a);
- unset($b);
- echo $b;
- ?>
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈