( PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)
ingres_fetch_array — Liest eine Zeile der Ergebnismenge in ein Array ein
$result
[, int $result_type
] )Diese Funktion ist eine erweiterte Version der Funktion ingres_fetch_row(). Zusätzlich zur Speicherung der Daten unter numerischen Indizes werden die Daten auch unter assoziativen Indizes im Ergebnisarray gespeichert, in dem die Feldnamen als Schlüssel benutzt werden.
Falls eine oder mehrere Spalten der Ergebnismenge dieselben Feldnamen haben, bekommt die letzte Spalte die Priorität. Um auf die anderen Spalten zuzugreifen, müssen sie entweder den numerischen Index der Spalte benutzen oder Aliase für die Spalten machen.
<?php
$result = ingres_query($link, "select ap_place as city, ap_ccode as country from airport where ap_iatacode = 'VLL'");
$result = ingres_fetch_array($result);
$foo = $result["city"];
$bar = $result["country"];
?>
Von der Geschwindigkeit her ist diese Funktion identisch zu ingres_fetch_object(), und fast so schnell wie ingres_fetch_row() (der Unterschied ist zu vernachlässigen).
In der Standardeinstellung beginnt die Indizierung der Arrays, die mit ingres_fetch_array() geholt werden bei 1 und nicht bei 0, wie in anderen DBMS-Erweiterungen. Die Startposition kann aber angepasst werden, indem man den Konfigurationsparameter ingres.array_index_start auf den Wert 0 setzt.
Hinweis: Verwandte Konfigurationen
Siehe auch die Direktiven ingres.array_index_start, ingres.fetch_buffer_size und ingres.utf8 der Laufzeit-Konfiguration.
result
Die Ergebniskennung
result_type
Der Ergebnistyp. Der Parameter result_type
kann die Werte INGRES_NUM für ein numerisches Array, INGRES_ASSOC für
ein assoziatives Array oder INGRES_BOTH (Vorgabewert) für beides haben.
Gibt eine gelesene Zeile aus einem Ergebnis in einem Array zurück oder
FALSE
, wenn keine Zeilen mehr gelesen werden können.
Beispiel #1 Eine Ergebniszeile in ein Array einlesen
<?php
$link = ingres_connect($database, $user, $password);
$result = ingres_query($link,"select * from table");
while ($row = ingres_fetch_array($result)) {
echo $row["user_id"]; // aus dem assoziativen Array
echo $row["fullname"];
echo $row[1]; // aus dem numerischen Array
echo $row[2];
}
?>