oci_fetch_array
(PHP 5)
oci_fetch_array -- Returns the next row from the result data as an associative or
numeric array, or both
Description
array
oci_fetch_array ( resource statement [, int mode] )
Returns an array, which corresponds to the next result row.
For details on the data type mapping performed by
the oci8 driver, see the datatypes
supported by the driver
It should be mentioned here, that oci_fetch_array()
is insignificantly slower, than
oci_fetch_row(), but much more handy.
Parameters
statement
A valid OCI statement identifier.
statement
An optional second parameter can be any combination of the following
constants:
OCI_BOTH - return an array with both associative
and numeric indices (the same as OCI_ASSOC
+ OCI_NUM). This is the default behavior.
|
OCI_ASSOC - return an associative array
(as oci_fetch_assoc() works).
|
OCI_NUM - return a numeric array,
(as oci_fetch_row() works).
|
OCI_RETURN_NULLS - create empty elements
for the NULL fields.
|
OCI_RETURN_LOBS - return the value of a LOB
of the descriptor.
|
Default mode
is OCI_BOTH.
Return Values
Returns an array with both associative and numeric indices, or FALSE if
there are no more rows in the statement
.
Note: This function sets NULL fields to
PHP NULL value.
Note:
Oracle returns all field names in uppercase and associative indices in
the result array will be uppercased too.
Examples
Example 1. oci_fetch_array() with OCI_BOTH example
<?php $connection = oci_connect("apelsin", "kanistra");
$query = "SELECT id, name FROM fruits";
$statement = oci_parse ($connection, $query); oci_execute ($statement);
while ($row = oci_fetch_array ($statement, OCI_BOTH)) { echo $row[0]." and ".$row['ID']." is the same<br>"; echo $row[1]." and ".$row['NAME']." is the same<br>"; } ?>
|
|
Example 2. oci_fetch_array() with
OCI_NUM example
<?php $connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruits";
$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>"; //this will output first 100 bytes from LOB } ?>
|
|
Example 3. oci_fetch_array() with
OCI_ASSOC example
<?php $connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruits";
$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>"; //this will output "Object id #1" } ?>
|
|
Example 4. oci_fetch_array() with
OCI_RETURN_LOBS example
<?php $connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruits";
$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>"; //this will output LOB's content } ?>
|
|