PHP Australia Conference 2015

oci_num_fields

(PHP 5, PECL OCI8 >= 1.1.0)

oci_num_fieldsReturns the number of result columns in a statement

Description

int oci_num_fields ( resource $statement )

Gets the number of columns in the given statement.

Parameters

statement

A valid OCI statement identifier.

Return Values

Returns the number of columns as an integer, or FALSE on errors.

Examples

Example #1 oci_num_fields() example

<?php
$conn 
oci_connect("scott""tiger");
$stmt oci_parse($conn"select * from emp");

oci_execute($stmt);

while (
oci_fetch($stmt)) {
    echo 
"\n";
    
$ncols oci_num_fields($stmt);
    for (
$i 1$i <= $ncols$i++) {
        
$column_name  oci_field_name($stmt$i);
        
$column_value oci_result($stmt$i);
        echo 
$column_name ': ' $column_value "\n";
    }
    echo 
"\n";
}

oci_free_statement($stmt);
oci_close($conn);
?>

Notes

Note:

In PHP versions before 5.0.0 you must use ocinumcols() instead. This name still can be used, it was left as alias of oci_num_fields() for downwards compatability. This, however, is deprecated and not recommended.

add a note add a note

User Contributed Notes 1 note

up
0
jnield at impole dot com
14 years ago
The following is not immediately obvious:

If you need the number of columns in a REF CURSOR returned from a PL/SQL procedure, you need to use OCINumColumns() on the cursor handle returned by OCINewCursor after it is bound and executed, not the statement handle. Same applies for OCIColumnName() and friends.
To Top