我正在使用析构函数来关闭数据库连接。
function __destruct(){
var_dump($this->dblink);
mysql_close($this->dblink);
}
var dump给了我
resource(7) of type (mysql link) NULL
并且mysql_close()给了我:
Warning: mysql_close() expects parameter 1 to be resource, null given
有什么想法吗?
修改 感谢回复,我发现了这个问题。另一个父类正在调用destruct。现在对我很明显。
感谢
答案 0 :(得分:2)
脚本完成后,对象会自动销毁。资源也被释放。如果在对象被销毁之前释放资源,则无法关闭它。因此,只有在脚本终止之前需要关闭连接时才关闭它。当脚本已经完成时关闭它是没有用的。所有资源都会自动关闭和清理。
答案 1 :(得分:0)
第一个对象必须被破坏,然后将资源释放为null ...然后你就不会有问题
<< mysql_close()期望参数1为资源>>
如果对象已经结束,你就无法关闭连接!