您不需要為您建立的每個結果資源呼叫 pg_free_result()。
當結果資源超出範圍時,它們會像其他所有東西一樣被垃圾回收。
除非您在某處囤積您的結果,否則您基本上可以忽略此函式。
這裡有一個您可以執行的小測試來確認這一點:http://pastebin.com/ghw1PHuE
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_free_result — 釋放結果記憶體
pg_free_result() 函式會釋放與指定的 PgSql\Result 實例關聯的記憶體和資料。
只有在腳本執行期間記憶體消耗是一個問題時,才需要呼叫此函式。否則,所有結果記憶體將在腳本結束時自動釋放。
注意:
此函式以前稱為 pg_freeresult()。
版本 | 說明 |
---|---|
8.1.0 | result 參數現在需要一個 PgSql\Result 實例;以前需要的是 資源。 |
範例 #1 pg_free_result() 範例
<?php
$db = pg_connect("dbname=users user=me");
$res = pg_query($db, "SELECT 1 UNION ALL SELECT 2");
$val = pg_fetch_result($res, 1, 0);
echo "第二列的第一個欄位是:", $val, "\n";
pg_free_result($res);
?>
以上範例將輸出:
First field in the second row is: 2
您不需要為您建立的每個結果資源呼叫 pg_free_result()。
當結果資源超出範圍時,它們會像其他所有東西一樣被垃圾回收。
除非您在某處囤積您的結果,否則您基本上可以忽略此函式。
這裡有一個您可以執行的小測試來確認這一點:http://pastebin.com/ghw1PHuE