pg_fetch_array

(PHP 3 >= 3.0.1, PHP 4, PHP 5)

pg_fetch_array -- Holt eine Zeile als Array

Beschreibung

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

pg_fetch_array() gibt ein Array zurück, das die gelesene Zeile (Tupel, Datensatz) enthält.

pg_fetch_array() ist eine erweiterte Version von pg_fetch_row(). Zusätzlich zur Speicherung der Daten in einem numerischen Array (mit den Feldindizes) speichert diese Funktion die Daten in einem assoziativen Array, mit den Feldnamen als Indizes. In der Standardeinstellung wird ein Array mit beiden Indextypen zurückgegeben.

Anmerkung: Diese Funktion setzt NULL Felder auf den PHP Wert NULL.

pg_fetch_array() ist NICHT wesentlich langsamer als pg_fetch_row() oder pg_fetch_assoc(), ist aber viel einfacher zu benutzen.

Anmerkung: row wurde ab PHP 4.1.0 optional.

Anmerkung: result_type wurde in PHP 4.0.0 eingefügt.

Parameter Liste

result

PostgreSQL Verbindungskennung, die (unter anderenm) von den Funktionen pg_query(), pg_query_params() oder pg_execute() zurückgegeben wurde.

row

Die Nummer der Zeile des Abfrageergebnisses, die geholt werden soll. Die Nummerierung beginnt bei 0. Fehlt dieser Parameter, so wird jeweils die nächste Zeile geholt.

result_type

Ein optionaler Parameter, mit dem bestimmt werden kann, wie das array indiziert sein soll. result_type ist eine Konstante, die die Werte PGSQL_ASSOC, PGSQL_NUM oder PGSQL_BOTH annehmen kann. Mit der Konstanten PGSQL_NUM gibt pg_fetch_array() ein numerisch indiziertes Array zurück, mit der Konstanten PGSQL_ASSOC ein assoziatives Array. Die Standardeinstellung ist PGSQL_BOTH, mit der ein Array mit numerischen und asoziativen Indizes zurückgegeben wird.

Rückgabewerte

Ein array, das entweder numerisch (bei 0 beginnend) oder assoziativ indiziert ist, oder beides. Jeder Wert im array wird als string repräsentiert. Nullwerte der Datenbank (NULL) werden als NULL zurückgegeben.

Bei einem Fehler oder wenn der Parameter row größer als die Anzahl der Zeilen im Abfrageergebnis ist, oder wenn kein Datensatz mehr gelesen werden kann, wird FALSE zurückgegeben.

Beispiele

Beispiel 1. pg_fetch_array() Beispiel

<?php

$conn
= pg_pconnect("dbname=publisher");
if (!
$conn) {
  echo
"Konnte keine Verbindung aufbauen.\n";
  exit;
}

$result = pg_query($conn, "SELECT author, email FROM authors");
if (!
$result) {
  echo
"Ein Fehler ist aufgetreten.\n";
  exit;
}

$arr = pg_fetch_array($result, 0, PGSQL_NUM);
echo
$arr[0] . " <- Zeile 1 Autor\n";
echo
$arr[1] . " <- Zeile 1 E-mail\n";

// Seit PHP 4.1.0 ist der Parameter row optional. Stattdessen kann
// NULL übergeben werden. Aufeinanderfolgende Aufrufe von
// pg_fetch_array liefern jeweils den nächsten Datensatz.
$arr = pg_fetch_array($result, NULL, PGSQL_ASSOC);
echo
$arr["author"] . " <- Zeile 2 Autor\n";
echo
$arr["email"] . " <- Zeile 2 E-mail\n";

$arr = pg_fetch_array($result);
echo
$arr["author"] . " <- Zeile 3 Autor\n";
echo
$arr[1] . " <- Zeile 3 E-mail\n";

?>

Siehe auch

pg_fetch_row()
pg_fetch_object()
pg_fetch_result()

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 17:57:20