this page上的第一个代码示例中,这是倒数第二个函数。

评论说它释放了结果集,但是我不明白释放结果集到底意味着什么?结果集是一个对象,那么释放它意味着什么?

/* free result set */
$result->free();

最佳答案

结果集的创建是动态内存分配的一种形式,几乎可以肯定在执行SQL查询时完成,例如:

$conn = some_connection_to_database();
$rows = $conn->query("select name from etc_passwd where group = 'admin'")


由于意图是让您随后使用该结果集,因此无法将其作为查询本身的一部分释放。

因此,一旦运行查询并返回结果集,您便有责任在完成处理后释放该内存。

那就是使用free()的地方。基本思想(英语)是:


从某处获取结果集。
用它。
将其返回到其源(这是free位)。

关于php - free()函数在PHP中有什么作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38821743/

10-16 15:18