php 析構方法 destruct 什麼情況下執行 求所有的情況,是不是遇到?>php結束符號也執行
##析構函數會在到某個物件的所有引用都被刪除或當物件被明確銷毀時執行
在物件銷毀前執行吧? 依照官方手冊的描述,析構函數會在到某個物件的所有參考都被刪除或當物件被明確銷毀時執行。程式碼示範如下class sf{ public function destruct() { echo METHOD . PHP_EOL; } } $c1 = new sf; $c2 = $c1;echo 'unset $c2' . PHP_EOL;unset($c2);echo 'unset $c1' . PHP_EOL;unset($c1);// ----$c1 = new sf; $c2 = $c1;echo 'null $c2' . PHP_EOL; $c2 = null;echo 'null $c1' . PHP_EOL; $c1 = null;// ----$c1 = new sf; $c2 = $c1;echo '123 $c2' . PHP_EOL; $c2 = 123;echo '456 $c1' . PHP_EOL; $c1 = 456;echo 'the end' . PHP_EOL;
unset $c2unset $c1 sf::destructnull $c2null $c1 sf::destruct123 $c2456 $c1 sf::destruct the end
以上是php:析構方法 __destruct在什麼情況下執行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!