Php mysqli_free_结果是否必要?

Php mysqli_free_结果是否必要?,php,mysqli,Php,Mysqli,我仔细阅读了我的代码,读到当不再需要结果对象时,建议使用它。但是在看到每个查询在整个脚本中反复输出到$result变量之后,我想知道mysqli\u free\u result是否真的有必要。似乎每次运行查询时,$result变量都已被清除并设置为新结果。只是好奇是否有人对此有任何意见。实际上这是必要的,因为当发出许多请求时,它可能会给服务器带来沉重的负载。所以,你最好使用它 在其他一些情况下,当您知道此查询后面跟着其他查询时,您就不必再使用它了。这从来都不是严格必要的,但最好注意您正在使用的资

我仔细阅读了我的代码,读到当不再需要结果对象时,建议使用它。但是在看到每个查询在整个脚本中反复输出到
$result
变量之后,我想知道
mysqli\u free\u result
是否真的有必要。似乎每次运行查询时,
$result
变量都已被清除并设置为新结果。只是好奇是否有人对此有任何意见。

实际上这是必要的,因为当发出许多请求时,它可能会给服务器带来沉重的负载。所以,你最好使用它


在其他一些情况下,当您知道此查询后面跟着其他查询时,您就不必再使用它了。

这从来都不是严格必要的,但最好注意您正在使用的资源,并知道何时不再需要它们


插入那一行额外的代码是非常简单的,所以每次完成一个结果集时我都会这样做。它还有一个额外的好处,就是当您使用完资源后,可以让阅读您代码的人清楚地看到您的代码。

即使有重复的查询,并且$result变量已经被清除并设置为新结果?是的。通过使事情显式化,您不会丢失任何东西(除了必须额外键入一行代码)。但是,如果稍后您的一些代码被复制到其他地方,而之后没有对
$result
执行任何操作,会发生什么情况呢?或者重构会打乱事情的顺序?好的,谢谢你的帮助。我只是好奇,如果在每个查询结果之后使用mysqli_free_结果,会不会给服务器带来更多不必要的负载,因为结果会被自动删除和重置。当然除了最后一个。但是无论如何,脚本几乎完成了,所有结果都被自动释放。如果结果被自动释放,那么调用
mysqli\u free\u result
所做的额外工作将非常少,因此不会出现性能问题。我是否需要使用
mysqli\u free\u result($result)
如果
$result
超出范围?比如当包含
$result
的函数结束时?问这个问题的另一种方式是:是否可以使用
unset($result)
来代替
mysqli\u free\u result($result)
?@MacDada当一个变量得到GCed时,它的内存值会被清除,然而,这并不意味着GC正在寻找该变量的用途,也不会进行额外的清理。因此,是的,我仍然会打电话