oci_fetch_all
oci_fetch_assoc
OCI8 Funktionen
PHP Manual

# oci_fetch_array

(PHP 5, PECL OCI8 >= 1.1.0)

oci_fetch_array — Liefert die nächste Zeile der Ergebnisdaten als assoziatives und/oder numerisches Array

### Beschreibung

array oci_fetch_array ( resource `$statement` [, int `$mode` ] )

Liefert ein Array, welches mit der nächsten Ergebniszeile übereinstimmt.

Für Details zur vom OCI8-Treiber durchgeführten Umsetzung von Datentypen siehe die vom Treiber unterstützen Datentypen.

Es sollte hier noch erwähnt sein, das oci_fetch_array() nur unwesentlich langsamer als oci_fetch_row(), dafür aber viel handlicher ist.

### Parameter-Liste

`statement`

  Ein Zeiger auf eine gültige OCI-Anweisung.

`mode`

  Der optionale zweite Parameter kann eine beliebige Kombination aus dem folgenden Konstanten sein:

  - `OCI_BOTH` - liefert ein Array sowohl mit assoziativen als auch numerischem Index (gleichzusetzen mit `OCI_ASSOC` + `OCI_NUM`). Dieses ist das Standardverhalten.
  - `OCI_ASSOC` - liefert ein assiziatives Array (funktioniert wie oci_fetch_assoc()).
  - `OCI_NUM` - liefert ein indiziertes Array (funktioniert wie oci_fetch_row()).
  - `OCI_RETURN_NULLS` - erstellt leere Elemente für `NULL`-Felder.
  - `OCI_RETURN_LOBS` - liefert den Wert eines LOB-Deskriptors.
  Standard für `mode` ist `OCI_BOTH`.

### Rückgabewerte

Liefert ein Array sowohl mit assoziativem wie numerischem Index oder `FALSE`, wenn es keine weiteren Zeilen für das `statement` gibt.

> Hinweis: Diese Funktion setzt NULL-Felder auf den PHP Wert-`NULL`.

> Hinweis: Oracle liefert alle Feldnamen in Großschrift zurück, daher sind auch die assoziativen Indizes im Ergebnisarray in Großschrift.

### Beispiele

Beispiel #1 oci_fetch_array() mit `OCI_BOTH`-Beispiel

`<?php
$connection = oci_connect("apelsin", "kanistra");
$query = "SELECT id, name FROM fruechte";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
while ($row = oci_fetch_array ($statement, OCI_BOTH)) {
echo $row[0]." und ".$row['ID']." ist gleich<br>";
echo $row[1]." und ".$row['NAME']." ist gleich<br>";
}
?>`

Beispiel #2 oci_fetch_array() mit `OCI_NUM`-Beispiel

`<?php
$connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruechte";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
while ($row = oci_fetch_array ($statement, OCI_NUM)) {
echo $row[0]."<br>";
echo $row[1]."<br>";
echo $row[2]->read(100)."<br>"; // dies gibt die ersten 100 Bytes des LOBs aus
}
?>`

Beispiel #3 oci_fetch_array() mit `OCI_ASSOC`-Beispiel

`<?php
$connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruechte";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
while ($row = oci_fetch_array ($statement, OCI_ASSOC)) {
echo $row['ID']."<br>";
echo $row['NAME']."<br>";
echo $row['LOB_FIELD']."<br>"; // dies gibt "Object id #1" aus
}
?>`

Beispiel #4 oci_fetch_array() mit `OCI_RETURN_LOBS`-Beispiel

`<?php
$connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruechte";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
while ($row = oci_fetch_array ($statement, (OCI_NUM+OCI_RETURN_LOBS))) {
echo $row[0]."<br>";
echo $row[1]."<br>";
echo $row['LOB_FIELD']."<br>"; // dies gibt den Inhalt des LOBs aus
}
?>`

### Siehe auch

- oci_fetch_assoc() - Liefert die nächste Zeile der Ergebnisdaten als assoziatives Array
- oci_fetch_object() - Liefert die nächste Zeile der Ergebnisdaten als Objekt
- oci_fetch_row() - Liefert die nächste Zeile der Ergebnisdaten als numerisches Array
- oci_fetch_all() - Holt alle Reihen der Ergebnisdaten in ein Array

oci_fetch_all
oci_fetch_assoc
OCI8 Funktionen
PHP Manual