mysqli 持久连接是否需要释放结果集?
Is freeing result sets necessary for mysqli persistent connections?
Open non-persistent MySQL connections and result sets are automatically closed when their objects are destroyed. Explicitly closing open connections and freeing result sets is optional.
但是mysqli持久连接也是可选的吗?
是的,它是可选的。持久连接是在PHP进程结束时没有关闭的连接。当 PHP 处理新的 HTTP 请求时,它将重用相同的连接。因此,您不需要关闭连接。调用 mysqli_close()
对持久连接没有影响。
至于释放结果集,mysqli 将在脚本结束时清除任何挂起的结果集,而不管模式如何。 您永远不需要手动释放结果。释放结果集的唯一原因是当您有剩余的未缓冲行要获取并丢弃,然后在同一脚本中执行另一个操作时.这是唯一一次使用 mysqli_free_result()
是合理的。
Mysqli 默认也会clean up the connection(可以禁用)。
更重要的是,持久连接通常是工作中的噩梦,如果可能,不惜一切代价避免它。连接对性能的影响通常很小,大多数应用都可以忍受为每个请求打开一个新连接。
Open non-persistent MySQL connections and result sets are automatically closed when their objects are destroyed. Explicitly closing open connections and freeing result sets is optional.
但是mysqli持久连接也是可选的吗?
是的,它是可选的。持久连接是在PHP进程结束时没有关闭的连接。当 PHP 处理新的 HTTP 请求时,它将重用相同的连接。因此,您不需要关闭连接。调用 mysqli_close()
对持久连接没有影响。
至于释放结果集,mysqli 将在脚本结束时清除任何挂起的结果集,而不管模式如何。 您永远不需要手动释放结果。释放结果集的唯一原因是当您有剩余的未缓冲行要获取并丢弃,然后在同一脚本中执行另一个操作时.这是唯一一次使用 mysqli_free_result()
是合理的。
Mysqli 默认也会clean up the connection(可以禁用)。
更重要的是,持久连接通常是工作中的噩梦,如果可能,不惜一切代价避免它。连接对性能的影响通常很小,大多数应用都可以忍受为每个请求打开一个新连接。