【发布时间】:2014-07-20 16:53:27
【问题描述】:
我正在通过使用 mysqli_connect 函数建立连接来访问 php 脚本中的数据库。我观察到在脚本末尾关闭连接不是强制性的。
在为访问 php 中的 mysql 数据库而创建的连接脚本中不使用 mysqli_close() 有何影响?
【问题讨论】:
我正在通过使用 mysqli_connect 函数建立连接来访问 php 脚本中的数据库。我观察到在脚本末尾关闭连接不是强制性的。
在为访问 php 中的 mysql 数据库而创建的连接脚本中不使用 mysqli_close() 有何影响?
【问题讨论】:
如果您使用 cgi,则无需关闭 mysql 连接,因为它们会在脚本执行结束时自动关闭。
注意:服务器的链接将在执行后立即关闭 脚本结束,除非它通过显式调用提前关闭 mysql_close()。
虽然关闭连接被认为是一种好习惯。
如果您自己关闭连接:
- 您必须检查每个查询的
$_connected的值。这意味着 PHP 必须检查变量$_connectedA) 是否存在 B) 是布尔值,C) 是真/假。- 您必须调用“断开连接”函数,而函数调用是 PHP 中更昂贵的操作之一。 PHP 必须检查 您的功能 A)存在,B)不是私有/受保护的,C)您 为您的函数提供了足够的参数。它还必须创建一个 在新的本地范围内复制 $connection 变量。
- 然后您的“断开连接”函数将调用 mysql_close(),这意味着 PHP A) 检查 mysql_close() 是否存在和 B) 您提供的 mysql_close() 和 C) 所需的所有参数,它们是正确的 类型(mysql 资源)。
因此,如果您不使用持久连接,您的 MySQL 连接将在页面执行结束时关闭。所以你不必为此烦恼。因此没有缺点。
【讨论】:
如果您相当确定您不会再次使用该连接,或者没有管理您打开的连接的类,那么关闭是一种很好的做法。几个原因:
【讨论】: