我有一个类,其中一些方法中设置了类变量。该类有一个 __destruct() 函数,它使用 unset() 函数取消设置类变量。
现在我正在列出所有要在 __destruct 中取消设置的变量,但似乎应该有一种方法可以取消所有设置。
例如,现在我正在这样做:
function __destruct()
{
unset($this->variable1);
unset($this->variable2);
//et cetera
}
肯定有一种方法可以取消所有设置而不列出它们,对吧?
最佳答案
foreach ($this as &$value) {
$value = null;
}
参见 http://www.php.net/manual/en/language.oop5.iterations.php .
您不应该unset
属性,它们是类/对象的一部分。将它们设置为 null
以清除它们的值。但是:无论如何,该对象即将耗尽内存,所有属性都会随之消失。没有真正需要这样做。
https://stackoverflow.com/questions/6604988/