为了账号安全,请及时绑定邮箱和手机立即绑定

为什么实例化对象析构函数会被调用

<?php

class Car {

    //增加构造函数与析构函数

    function __construct(){

        print '父类构造函数被调用 \n';

    }

    function __destruct(){

        print '析构函数被调用 \n';

        

    }

}

$car = new Car();  //实例化时会调用构造函数


正在回答

2 回答

<?php
class Car {
    //增加构造函数与析构函数
    public $name = 'fff';
function __construct() {
       print "构造函数被调用 \n";
   }
function __destruct() {
       print "析构函数被调用 \n";
}
}
$car = new Car();
echo $car->name;
echo '<br />';

当PHP代码执行完毕以后,会自动回收与销毁对象

这样你应该能明白

1 回复 有任何疑惑可以回复我~

如果你在$car = new Car();后面打上echo “hello”;

你会发现浏览器打印的是  构造  hello  析构 

为什么不是 构造 析构 hello?

原因是php页面执行完请求后,内存中就销毁它了,同时这个页面创造的对象就会被销毁

对象被销毁,不就自动调用析构函数了?


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么实例化对象析构函数会被调用

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号