(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
pg_fetch_all — 取得されたすべての行を配列として取得する
pg_fetch_all()は、 PgSql\Result インスタンスのすべての行 (レコード)を保持する配列を返します。
注意: この関数は、 NULL フィールドに PHPの
null
値を設定します。
result
pg_query()、pg_query_params() や (様々な関数がありますが、特に) pg_execute() が返した PgSql\Result クラスのインスタンス。
mode
返される配列のインデックスを制御するオプションの引数です。
mode
は定数で、以下の値を取ることができます。:
PGSQL_ASSOC
,
PGSQL_NUM
, PGSQL_BOTH
。
PGSQL_NUM
を使うと、
pg_fetch_all() は配列のインデックスを数値にした配列を返します。
PGSQL_ASSOC
を使うと、
連想配列のインデックスを返します。
デフォルトの PGSQL_BOTH
を指定すると、
数値と連想配列のインデックスを両方含めた形で配列を返します。
結果のすべての行を含む配列を返します。それぞれの行は、フィールド名を 添字とするフィールド値の配列です。
バージョン | 説明 |
---|---|
8.1.0 |
result は、PgSql\Result
クラスのインスタンスを期待するようになりました。
これより前のバージョンでは、リソース を期待していました。
|
7.1.0 |
mode パラメータが追加されました。
|
例1 PostgreSQL fetch all
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "An error occurred.\n";
exit;
}
$result = pg_query($conn, "SELECT * FROM authors");
if (!$result) {
echo "An error occurred.\n";
exit;
}
$arr = pg_fetch_all($result);
print_r($arr);
?>
上の例の出力は、 たとえば以下のようになります。
Array ( [0] => Array ( [id] => 1 [name] => Fred ) [1] => Array ( [id] => 2 [name] => Bob ) )