重定向用户时,与MySQL的连接是否自动关闭?

时间:2014-04-08 17:46:57

标签: php mysql pdo

我正在使用pdo方法通过PHP连接到MySQL数据库。

以下是我的页面执行的步骤。 1)打开连接 2)运行查询1 3)运行查询2 4)运行查询3 5)紧密联系。

现在,如果我想使用"标题('位置new_page.php')"将用户重定向到其他页面自从用户离开页面后,步骤3之后的功能是否会自动关闭与数据库的连接?或者我需要在传输发生之前手动关闭连接吗?

感谢

3 个答案:

答案 0 :(得分:3)

您不必这样做,连接会在脚本结束时自动关闭。

来自PHP文档...

  

通常不需要使用mysql_close()作为非持久性打开   链接在脚本执行结束时自动关闭。

这也是PDO常见的。

另外,这......

  

使用PHP 4的Zend Engine,一个没有更多引用的资源   自动检测,并由垃圾收集器释放。对于   这个原因,很少需要手动释放内存。

回答你的问题..

  

现在,如果我想将用户重定向到其他页面   "标题('位置new_page.php')"第3步后的功能就是了   自用户离开页面后,与数据库的连接是否自动关闭?   或者我需要在转移前手动关闭连接   会发生什么?

每当您执行标题时,请使用exitdie来结束脚本。

die(header("location:somepage.php"));

header("location:somepage.php");
exit;

答案 1 :(得分:2)

是的,在PHP执行完该页面后将关闭连接。换句话说,在页面加载结束时,连接将被关闭。

答案 2 :(得分:1)

不,标题调用不会停止脚本执行

说明:

<?php

//1) open connection 
//2) run queries 1 
//3) run queries 2 
header('Location: /');
//script execution continuous here
//4) run queries 3 
exit();// here php close all your connections
//5) run queries 4 //Unreachable code
//6) close connection.