Forum und email

ifx_fetch_row

(No version information available, might be only in CVS)

ifx_fetch_row — Holt eine Zeile als assoziatives Array

Beschreibung

array ifx_fetch_row ( int $result_id [, mixed $position ] )

Gibt ein assoziatives Array zurück, das die gelesene Zeile enthält oder FALSE, falls es keine Zeilen mehr zu lesen gibt.

Für Blob Spalten werden Integerwerte als blob-IDs zurückgegeben, die von der Funktion ifx_get_blob() verwendet werden, es sei denn, Sie haben ifx_textasvarchar(1) oder ifx_byteasvarchar(1) benutzt. Dann werden Blobs als Zeichenketten zurückgegeben. Bei einem Fehler wird FALSE zurückgegeben.

result_id ist eine gültige Ergebniskennung, die von ifx_query() oder ifx_prepare() (nur bei SELECT Abfragen!) zurückgegeben wurde.

position ist ein optionaler Parameter für eine "fetch" Operation eines "scroll" Cursors. Der Wert dieses Parameters kann "NEXT", "PREVIOUS", "CURRENT", "FIRST", "LAST" oder eine Zahl sein. Falls Sie eine Zahl angeben, werden die zu holenden Zeilen "absolut" angegeben. Dieser Parameter ist optional und gilt nur für SCROLL Cursors.

ifx_fetch_row() holt eine Zeile aus der Ergebnismenge, die mit der angegebenen Ergebniskennung verknüpft ist. Die Zeile wird als Array zurückgegeben. Jede Spalte der Ergebnismenge wird in einer Arraykomponente gespeichert, beginnend bei Offset 0, mit dem Spaltennamen als Index.

Aufeinanderfolgende Aufrufe von ifx_fetch_row() geben die jeweils nächste Zeile der Ergebnismenge zurück oder FALSE, falls es keine Zeile mehr gibt.

Example#1 Informix fetch rows

<?php
$rid 
ifx_prepare ("select * from emp where name like " $name,
                     
$connidIFX_SCROLL);
if (! 
$rid) {
  
/* ... Fehler ... */
}
$rowcount ifx_affected_rows($rid);
if (
$rowcount 1000) {
    
printf ("Zu viele Zeilen in der Ergebnismenge (%d)\n<br />"$rowcount);
    die (
"Bitte begrenzen Sie Ihre Abfrage<br />\n");
}
if (! 
ifx_do ($rid)) {
  
/* ... Fehler ... */
}
$row ifx_fetch_row ($rid"NEXT");
while (
is_array($row)) {
    for(
reset($row); $fieldname=key($row); next($row)) {
        
$fieldvalue $row[$fieldname];
        
printf ("%s = %s,"$fieldname$fieldvalue);
    }
    
printf("\n<br />");
    
$row ifx_fetch_row ($rid"NEXT");
}
ifx_free_result ($rid);
?>