何时在PHP中关闭MySQL连接

时间:2012-06-14 13:31:38

标签: php mysql

  

可能重复:
  Do I really need to do mysql_close()

也许要问的第一个问题是,我是否需要关闭MySQL连接?这是在每个脚本结束时自动完成的吗?

无论如何,在下面的示例中,您可以看到是否从DoStuff()调用DoOtherStuff(),您的数据库连接已关闭,然后您可以在调用DoOtherStuff()之后立即运行MySQL查询。现在,打开和关闭MySQL连接的规则是什么?我可以不关闭任何连接并在功能需要时打开连接吗?这会创建超过必要的数据库连接并使我的代码更慢吗?有什么提示吗?我只是在做最好的事情,我觉得有点失落。

function DoStuff(){
    $connection = mysql_connect(...);

    DoOtherStuff();

    mysql_query(...);//This won't run

    mysql_close($connection);
}

function DoOtherStuff(){
    $connection = mysql_connect(...);

    //Does other stuff

    mysql_close($connection);
}

2 个答案:

答案 0 :(得分:1)

不,你不必关闭你的连接。根据{{​​3}}:

  

通常不需要使用mysql_close(),因为非持久性打开   链接在脚本执行结束时自动关闭。   另请参阅释放资源。

大多数应用程序只有一个数据库连接,因此实际上也不需要存储连接资源。

答案 1 :(得分:0)

通常,您在脚本开头打开连接 一次 ,并且根本不关闭它(这意味着PHP会在结束时关闭它)脚本)或者当你确定不再需要它时关闭它。

在每个功能中打开一个单独的连接肯定是疯狂的。您的代码中应该只有一个位置mysql_connect