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 or FALSE in
     case of error or there are no more rows in the result.
    
     oci_fetch_array() returns an array with both
     associative and numeric indices.
    
Note: This function sets NULL fields to
PHP NULL value.
     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.
    
     It should be mentioned here, that oci_fetch_array()
     is insignificantly slower, than 
     oci_fetch_row(), but much more handy.
    
Note: 
      Oracle returns all field names in uppercase and associative indices in the result array will be uppercased too.
     
     
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 } ?>
 |  
  | 
    For details on the data type mapping performed by 
the oci8 driver, see the datatypes 
supported by the driver
     See also oci_fetch_assoc(),
     oci_fetch_object(),
     oci_fetch_row() and
     oci_fetch_all().