(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_free_result — クエリ結果のメモリを開放する
pg_free_result() は、指定された クエリ結果 PgSql\Result インスタンスに関するメモリとデータを開放します。
この関数は、スクリプト実行中のメモリ使用量を抑制したい場合にのみ コールする必要があります。それ以外の場合は、すべての結果保持用 メモリは、スクリプトが終了する際に自動的に開放されます。
注意:
この関数は、以前は pg_freeresult() と呼ばれていました。
resultpg_query() 、pg_query_params() や (様々な関数がありますが、特に) pg_execute() が返した PgSql\Result クラスのインスタンス。
| バージョン | 説明 |
|---|---|
| 8.1.0 |
result は、PgSql\Result
クラスのインスタンスを期待するようになりました。
これより前のバージョンでは、resource を期待していました。
|
例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 "First field in the second row is: ", $val, "\n";
pg_free_result($res);
?>上の例の出力は以下となります。
First field in the second row is: 2
You do NOT need to call pg_free_result() on every result resource you create.
When result resources go out of scope, they are garbage collected just like everything else.
Unless you're hoarding your results somewhere, you can basically ignore this function.
Here's a little test you can run to confirm this: http://pastebin.com/ghw1PHuE