PHP 8.5.0 Beta 3 available for testing

pg_set_chunked_rows_size

(PHP 8 >= 8.4.0)

pg_set_chunked_rows_sizeチャンクモードで取得するクエリ結果の行数を設定する

説明

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

チャンクモードで取得するクエリ結果を設定します。 後に返されるクエリ結果は、最大size 行が含まれる複数のチャンクに分割されます。 この関数は、pg_get_result() を使って結果を取得する前にコールしなければいけません。 この関数は、libpq のバージョンが 17 以降の場合に利用可能です。

パラメータ

connection

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

size
チャンクごとに取得する行数

戻り値

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

エラー / 例外

size1 より小さい場合、 ValueError がスローされます。

例1 pg_result_memory_size() の例

<?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));

// 結果を取得した以降に呼び出しても無意味
var_dump(pg_set_chunked_rows_size($conn, 10));

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

int(1)
bool(false)

参考

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top