gpt4 book ai didi

php - 在析构函数中取消设置对象属性是否更有效?

转载 作者:搜寻专家 更新时间:2023-10-31 20:39:48 25 4
gpt4 key购买 nike

假设一个对象具有大量数据的属性,在析构函数中取消设置属性是否更有效?或者让 php 释放该对象分配的内存?

class A {
protected $foo;
protected $bar;
protected $baz;

public function __construct()
{
$this->foo = big_amount_of_data();
$this->bar = reference_to_a_big_object();
$this->foo = data_from_big_file();
}

public function doProcess()
{
// do something
}

public function __destruct()
{
// Should I do this?
unset(
$this->foo,
$this->bar,
$this->baz
);
}
}

最佳答案

分配 null 比取消设置要好。它更快,如果有其他变量引用您正在取消设置的变量,分配 null 实际上会释放内存,而取消设置不会 - 其他变量仍将具有数据而不是空值

关于php - 在析构函数中取消设置对象属性是否更有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25376599/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com