我想知道為什么實例化對象后,析構函數也被調用了
如果我就這么寫的話 ?輸出 構造 ?析構 ?可是我并沒有銷毀對象啊 為什么析構函數背調用了
class Car {
? function __construct() {
? ? ? print "構造 \n";
? }
? function __destruct() {
? ? ? print "析構 \n";
? }
}
$car = new Car();
如果我就這么寫的話 ?輸出 構造 ?析構 ?可是我并沒有銷毀對象啊 為什么析構函數背調用了
class Car {
? function __construct() {
? ? ? print "構造 \n";
? }
? function __destruct() {
? ? ? print "析構 \n";
? }
}
$car = new Car();
2016-09-08
舉報
2016-09-09
如果你在$car = new Car();后面打上echo “hello”;
你會發現瀏覽器打印的是 ?構造 ?hello ?析構?
為什么不是 構造?析構?hello?
原因是php頁面執行完請求后,內存中就銷毀它了,同時這個頁面創造的對象就會被銷毀
對象被銷毀,不就自動調用析構函數了?
2016-09-08
當PHP代碼執行完畢以后,會自動回收與銷毀對象...應該是這樣吧