PHP 文档有这样的说法pg_free_result()
:
仅当脚本执行期间的内存消耗存在问题时才需要调用此函数。否则,脚本结束时将自动释放所有结果内存。
http://www.php.net/manual/en/function.pg-free-result.php
我会(也许天真地)期望调用返回的资源pg_query()
在超出范围时被垃圾收集。
在这样的假设函数中:
function selectSomething ()
{
$res = pg_query("SELECT blah FROM sometable");
// do something with $res
pg_free_result($res); // required or not?
}
最后真的有必要打电话pg_free_result()
吗?
换句话说,如果我调用这个函数 1000 次,它会占用内存来存储所有 1000 个结果吗?
编辑:我说的是典型案例,即pg_connect()
而不是pg_pconnect()
.