pg_set_chunked_rows_size

Set the query results to be retrieved in chunk mode

説明

bool pg_set_chunked_rows_size(PgSql\Connection $connection, int $size)

Set the query results to be retrieved in chunk mode. The query results returned afterward will be divided into multiple chunks, each containing up to size rows. This function must be called before retrieving results with pg_get_result. This function is only available when libpq is version 17 or higher.

パラメータ

connection

PgSql\Connection クラスのインスタンス。

size
The number of rows to be retrieved in each chunk.

戻り値

成功した場合に true を、失敗した場合に false を返します。

エラー / 例外

If size is less than 1, a ValueError will be thrown.

例1 pg_result_memory_size example

<?php

$conn = pg_connect($conn_str);

for ($i = 0; $i < 10; $i ++) {
  pg_query($conn, "INSERT INTO users DEFAULT VALUES");
}

pg_send_query($conn, "SELECT * FROM users");
pg_set_chunked_rows_size($conn, 1);

$result = pg_get_result($conn);
var_dump(pg_num_rows($result));

// No effect after the result is retrieved
var_dump(pg_set_chunked_rows_size($conn, 10));

上の例の出力は以下となります。

int(1)
bool(false)

参考

  • pg_get_result
  • pg_result_status