我有一个具有mysqli数据库连接的实例属性的对象。我试图在破坏对象时将一些数据写入数据库,如下所示:
class A {
function __destruct()
{
$this->shutdown();
}
function shutdown()
{
$this->mysqli->query("UPDATE `table` SET field='val'");
}
....
}
但我一直收到Couldn't fetch Database
错误。我假设垃圾收集正在杀死mysqli实例内部的数据库连接资源......?
我正在尝试确定处理此方案的最佳方法。由于所导致的所有数据库问题,理想情况下无需在每个析构上进行新连接或重新连接。
答案 0 :(得分:0)
尝试这种方法
function __destruct()
{
$this->shutdown();
parent::__destruct();
}