-1

可能重复:
我真的需要做 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);
}
4

2 回答 2

1

不,您不必关闭连接。根据手册

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

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

于 2012-06-14T13:32:33.307 回答
0

通常,您在脚本开始时打开一个连接或者根本不关闭它(这意味着 PHP 将在脚本结束时关闭它),或者当您确定不再需要它时关闭它.

在每个函数中打开单独的连接肯定是疯狂的。您的代码中应该只有一个地方写着mysql_connect.

于 2012-06-14T13:34:01.637 回答