Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 关闭数据库连接_Php_Database - Fatal编程技术网

Php 关闭数据库连接

Php 关闭数据库连接,php,database,Php,Database,我正在使用mongodb和ZendFramework2进行项目,所以在这里我在构造函数中创建了连接 private $conn; public function __construct(){ $this->conn = new \MongoClient('mongodb://example.com:27017', array("connect" => TRUE)); } 它包含几个操作来执行数据库操作,如createdb、dropdb、renamedb等。因此,我在_di

我正在使用mongodb和ZendFramework2进行项目,所以在这里我在构造函数中创建了连接

private $conn;

public function __construct(){
    $this->conn = new \MongoClient('mongodb://example.com:27017', array("connect" => TRUE));
}
它包含几个操作来执行数据库操作,如createdb、dropdb、renamedb等。因此,我在_distruct()方法中关闭该连接


我的代码运行良好。但是我想知道这样可以吗?

PHP会自动关闭数据库连接

您可以在中阅读更多关于此的信息

但是

引用: “打开的连接(和类似的资源)在脚本执行结束时会自动销毁。但是,当不再需要这些连接、结果集和语句句柄时,您仍然应该关闭或释放它们。这将有助于更快地将资源返回到PHP和MySQL。”

所以基本上,如果你有大量的东西进出数据库,那么是的,你可能想马上关闭


在我看来,这是相当可选的,你可以选择是否终止进程。

我很确定你实际上并不需要它,因为php会在运行脚本后立即关闭连接。你不能使用ORM而不是自己做抽象层吗?@j0k是的,我使用docrain odm工具。但创建数据库时,我使用PHP核心类Splus 1进行Tikkes。PHP在执行查询后立即关闭连接。
public function __destruct(){
    $this->conn->close();
}