Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7">

pg_fetch_array

(PHP 3>= 3.0.1, PHP 4 )

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

説明

array pg_fetch_array ( resource result [, int row [, int result_type]])

pg_fetch_array()は、取得された行(タプル/レコー ド)を保持する配列を返します。行がもうない場合はFALSEを返します。

pg_fetch_array()は拡張版の pg_fetch_row()です。 データを結果配列の数値インデックスに保持することに加えて、 フィールド名をキーとしてデータを連想インデックスにも保存します。

rowは、取得する行(レコード)番号です。最初 の行は0です。

result_typeは、返り値の初期化方法を制御す るオプションのパラメータです。result_type は定数であり、次の値のどれかとすることが可能です。: PGSQL_ASSOC, PGSQL_NUM, and PGSQL_BOTH。 pg_fetch_array()は、PGSQL_ASSOCのキーとしてフィー ルド名がある連想配列を返します。PGSQL_NUMをキーとした場合はフィー ルド添字、PGSQL_BOTHをキーとした場合はフィールド名/添字です。デフォ ルトは、PGSQL_BOTHです。

注意 result_typeはPHP4.0で追加されました。

注意すべき重要な点として、pg_fetch_array()を 使用しても、かなりの付加価値があるにもかかわらず pg_fetch_row()を使用した場合に比べて 極端に遅くなるわけではないということがあげられます。

pg_fetch_row()pg_fetch_object()pg_result()も参照下さい。

例 1PostgreSQLによる配列の取得

<?php 
$conn = pg_pconnect ("dbname=publisher");
if (!$conn) {
    echo "エラーが発生しました。\n";
    exit;
}
 
$result = pg_exec ($conn, "SELECT * FROM authors");
if (!$result) {
    echo "エラーが発生しました。\n";
    exit;
}
 
$arr = pg_fetch_array ($result, 0, PGSQL_NUM);
echo $arr[0] . " <- array\n";
 
$arr = pg_fetch_array ($result, 1, PGSQL_ASSOC);
echo $arr["author"] . " <- array\n";
?>

注意 4.1.0以降、rowはオプションです。