Php/docs/function.pg-fetch-array

提供:Dev Guides
< Php
移動先:案内検索

pg_fetch_array

(PHP 4, PHP 5, PHP 7)

pg_fetch_array行を配列として取得する


説明

pg_fetch_array ( resource $result [, int $row [, int $result_type = PGSQL_BOTH ]] ) : array

pg_fetch_array() は、取得した行(レコード)を 配列で返します。

pg_fetch_array() は拡張版の pg_fetch_row() です。結果配列のフィールド番号に 対応する要素にデータを格納し、それに加えてフィールド名をキーとした 連想配列にも格納します。デフォルトで、両方ともが有効になっています。

注意:

この関数は、

NULL フィールドに PHPの null 値を設定します。

pg_fetch_array() は、 pg_fetch_row() に比べてきわめて遅いというわけでは 「ありません」。そして、きわめて簡単に使用できます。


パラメータ

result
pg_query(), pg_query_params() あるいは pg_execute() から返される PostgreSQL の クエリ結果リソース。
row
取得する行番号。最初の行は 0 です。省略したり null を指定したりした場合は、 次の行を取得します。
result_type
result_type は、返り値の形式を制御する オプションのパラメータです。result_type は定数であり、次の値のどれかとすることが可能です。 PGSQL_ASSOCPGSQL_NUM および PGSQL_BOTHPGSQL_NUM を使用すると、pg_fetch_array() は数値添字の配列を返します。また、PGSQL_ASSOC を使用すると連想配列形式で返します。PGSQL_BOTH がデフォルト設定で、これは数値添字の配列と連想配列の両方を返します。


返り値

0 から始まる数値添字の配列か連想配列(フィールド名をキーとする)、 あるいはその両方を返します。配列の各要素の値は文字列です。 データベースの NULL 値は、null として返します。

row が結果の行数より大きい場合や行が存在しない場合、 そしてそれ以外のエラーが発生した場合は false を返します。


例1 pg_fetch_array() の例

<?php $conn = pg_pconnect("dbname=publisher");if (!$conn) {  echo "An error occurred.\n";  exit;}$result = pg_query($conn, "SELECT author, email FROM authors");if (!$result) {  echo "An error occurred.\n";  exit;}$arr = pg_fetch_array($result, 0, PGSQL_NUM);echo $arr[0] . " <- Row 1 Author\n";echo $arr[1] . " <- Row 1 E-mail\n";// row パラメータはオプションです。result_type を指定// したい場合は NULL を渡しておきます。pg_fetch_array を続けてコール// すると、次の行を取得します。$arr = pg_fetch_array($result, NULL, PGSQL_ASSOC);echo $arr["author"] . " <- Row 2 Author\n";echo $arr["email"] . " <- Row 2 E-mail\n";$arr = pg_fetch_array($result);echo $arr["author"] . " <- Row 3 Author\n";echo $arr[1] . " <- Row 3 E-mail\n";?>

参考