PHP變數甚麼時候釋放

2020-07-16 10:06:46

PHP變數甚麼時候釋放

PHP變數在程式執行完後釋放。

如果你使用完了,想銷毀,可以使用unset 來銷毀釋放

例: unset($str);

unset和null

$var = null;這種方式只是把參照去掉,其實並沒有釋放記憶體。unset方法才是php內建的銷毀變數、釋放記憶體的方法。

但是需要注意的是,如果在使用unset();對其參照的變數的參照關係還在,那麼這塊記憶體暫時還不會被釋放,只有當所有變數對這塊記憶體區域的參照都斷掉後,這塊被釋放的記憶體區域才會被釋放。

舉例如下:

<?php
$s=str_repeat('1',256);
$m=memory_get_usage();
unset($s); //銷毀$s
echo $m-memory_get_usage();
?>

結果:272

<?php
$s=str_repeat('1',256);
$m=memory_get_usage();
unset($s); //銷毀$s
$s = null; //區別在這裡,把變數的參照斷掉
echo $m-memory_get_usage();
?>

結果:192

以上就是PHP變數甚麼時候釋放的詳細內容,更多請關注TW511.COM其它相關文章!