pg_fetch_assoc

行を連想配列として取得する

説明

arrayfalse pg_fetch_assoc(PgSql\Result $result, intnull $row = null)

pg_fetch_assoc は、取得した行(レコード)を 保持する連想配列を返します。

pg_fetch_assoc は、オプションの第 3 パラメータに PGSQL_ASSOC を指定して pg_fetch_array をコールするのと同じです。連想配列のみを返します。もし数値添字の配列が 必要な場合は pg_fetch_row を使用してください。

注意: この関数は、 NULL フィールドに PHPの null 値を設定します。

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

パラメータ

result

pg_querypg_query_params や (様々な関数がありますが、特に) pg_execute が返した PgSql\Result クラスのインスタンス。

row

取得する行番号。最初の行は 0 です。省略したり null を指定したりした場合は、 次の行を取得します。

戻り値

連想配列(フィールド名をキーとする)を返します。 配列の各要素の値は文字列です。 データベースの NULL 値は、null として返します。

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

変更履歴

バージョン 説明
8.1.0 result は、PgSql\Result クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、リソース を期待していました。

例1 pg_fetch_assoc の例

<?php 
$conn = pg_connect("dbname=publisher");
if (!$conn) {
  echo "An error occurred.\n";
  exit;
}

$result = pg_query($conn, "SELECT id, author, email FROM authors");
if (!$result) {
  echo "An error occurred.\n";
  exit;
}

while ($row = pg_fetch_assoc($result)) {
  echo $row['id'];
  echo $row['author'];
  echo $row['email'];
}
?>

参考

  • pg_fetch_row
  • pg_fetch_array
  • pg_fetch_object
  • pg_fetch_result