oci_fetch_assoc

(PHP 5, PHP 7, PECL OCI8 >= 1.1.0)

oci_fetch_assocLiefert die nächste Zeile einer Abfrage als assoziatives Array

Beschreibung

array oci_fetch_assoc ( resource $statement )

Gibt ein assoziatives Array zurück, das die nächste Zeile der Ergebnismenge einer Abfrage enthält. Jedes Array-Element entspricht einer Spalte der Zeile. Diese Funktion wird üblicherweise in einer Schleife aufgerufen bis sie FALSE zurückgibt, was anzeigt, dass es keine weitere Zeilen gibt.

Ein oci_fetch_assoc()-Aufruf ist identisch mit einem oci_fetch_array()-Aufruf und OCI_ASSOC + OCI_RETURN_NULLS.

Parameter-Liste

statement

Der Identifizierer eines gültigen OCI8-Ausdrucks, der von oci_parse() erzeugt und von oci_execute() oder einem REF CURSOR-Ausdruck verwendet wird.

Rückgabewerte

Liefert ein assoziatives Array. Gibt es keine weiteren Zeilen für das statement, dann wird FALSE zurückgegeben.

Beispiele

Beispiel #1 oci_fetch_assoc() Beispiel

<?php

$conn 
oci_connect('hr''welcome''localhost/XE');
if (!
$conn) {
    
$e oci_error();
    
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid oci_parse($conn'SELECT department_id, department_name FROM departments');
oci_execute($stid);

while ((
$row oci_fetch_assoc($stid)) != false) {
    echo 
$row['DEPARTMENT_ID'] . " " $row['DEPARTMENT_NAME'] . "<br>\n";
}

oci_free_statement($stid);
oci_close($conn);

?>

Anmerkungen

Hinweis:

Weitere Beispiele für das Holen von Zeilen sind der Dokumentation von oci_fetch_array() zu entnehmen.

Siehe auch

  • oci_fetch() - Holt die nächste Zeile einer Abfrage in interne Puffer
  • oci_fetch_all() - Holt mehrere Reihen einer Abfrage in ein zweidimensionales Array
  • oci_fetch_array() - Liefert die nächste Zeile einer Abfrage als assoziatives oder numerisches Array
  • oci_fetch_object() - Liefert die nächste Zeile einer Abfrage als Objekt
  • oci_fetch_row() - Liefert die nächste Zeile einer Abfrage als numerisches Array

add a note add a note

User Contributed Notes 2 notes

up
3
dbernhardt129 at gmail dot com
7 years ago
Here's a simple example of using the oci_fetch_assoc function for anyone who would like to see it.

<?php
$oconn
= oci_connect('ora_user','ora_pass','ora_inst');
if (!
$oconn){
 
$msg = "Cannot connect to Oracle ".oci_error();
} else {
 
$msg = "Connected to Oracle";
}

$select_stmt = "select username from user_table";

$stid = oci_parse($oconn, $select_stmt);
oci_execute($stid);

echo
"<table border='1'>\n";

while (
$row = oci_fetch_assoc($stid)) {
    echo
"<tr>\n";
    echo
"<td>". $row["USERNAME"] . "</td>\n";
    echo
"</tr>\n";
}

echo
"</table>\n";

oci_free_statement($stid);
oci_close($oconn);
?>

Make sure you capitalize the column name for referencing the item in the associative array.  Of course, this is just a simple example and you might want to do some processing on the data prior to output, but you get the idea here.
up
1
Dawid Krysiak
4 years ago
Unlike oci_fetch_all(), after using oci_fetch_assoc(), LOB columns (CLOB, BLOB) are NOT returned as strings but as Oci-Lob objects. You have to use Oci-Lob->read() or load() method in order to read column content.
To Top