php基础__destruct

析构方法(__destruct()没有返回值,不接受参数,类没有默认的析构方法。)会自动调用,主要用于销毁资源,调用顺序是先创建的对象后被销毁(栈的先进后出原则)。在下列情况下析构方法会被调用:

    当程序(进程结束)退出时
    当一个对象被视为垃圾对象时,所谓垃圾对象是指没有任何变量再引用它,一旦一个对象被视为垃圾对象,析构方法会立即被调用,如下列代码:
    1	$object1=newOB();
    2	$object1=null;
    3	$object2=newOB();
    4	$object3=newOB();
    上述代码中调用三个对象的顺序是先调用$object1的析构方法,然后调用$object3的析构方法,最后调用$object2的析构方法。
    注意下列代码的析构方法调用顺序:
    1	$object1=newOB();
    2	$object4=$object1;
    3	$object1=null;
    4	$object2=newOB();
    5	$object3=newOB();
    上 述代码对象的析构方法调用顺序是先调用$object3的析构方法,然后调用$object2的析构方法,最后电泳$object1的析构方法。因为尽 管$object1=null,但是有语句$object4=$object1,这意味着析构方法调用顺序将按照栈的后进先出原则。

你可能感兴趣的:(php基础__destruct)