PHP-析构函数是否可以访问任何方法或属性


PHP - does a destructor have access to any methods or properties

在php中使用析构函数时,析构函数内的代码是否仍然可以访问对象的任何方法和属性?

是的,您可以访问析构函数中的方法和属性,如这个简单的测试用例所示:

class Foo {
    private $bar = 'member variable - ';
    function bar() {
        return 'function';
    }
    function __destruct() {
        echo $this->bar;
        echo $this->bar();
    }
}
$o = new Foo;
unset( $o);

打印:

成员变量函数

有关更多信息,请参阅上的PHP文档,包括它们在析构函数中引用成员变量的示例。