gpt4 book ai didi

PHP __Constructor 和 __Destructor 问题

转载 作者:行者123 更新时间:2023-12-02 05:55:37 26 4
gpt4 key购买 nike

我一直在尝试学习 PHP 的面向对象方面,并且想知道:

如果我使用 _constructor 打开与数据库的连接,使用该类中的函数(例如插入),定义的 __destructor 会在执行“插入”方法后关闭连接吗?

class data(){
function __constructor {
// connect to db
}

function insert($data){
// mysql_query(...)
}

function __destructor {
// close connection to db
}
}

$obj = new db();
$obj->insert('mumbo jumbo');

或者与数据库的连接是否仍然打开?因为我读到析构函数只有在对象被销毁时才会运行。但是如何销毁对象呢?

最佳答案

在 PHP 中,对象在超出作用域时被销毁。这通常是在脚本停止执行或在其中创建的函数结束时,但您可以在代码的早期销毁对象:

unset($my_variable);  

因此,为了回答您的问题,您应该允许析构函数在大多数情况下为您处理关闭数据库,尤其是对于小脚本。

关于PHP __Constructor 和 __Destructor 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1301654/

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