ibase_field_info

(PHP 5, PHP 7)

ibase_field_infoGet information about a field

说明

ibase_field_info ( resource $result , int $field_number ) : array

Returns an array with information about a field after a select query has been run.

参数

result

An InterBase result identifier.

field_number

Field offset.

返回值

Returns an array with the following keys: name, alias, relation, length and type.

范例

Example #1 ibase_field_info() example

<?php
$rs 
ibase_query("SELECT * FROM tablename");
$coln ibase_num_fields($rs);
for (
$i 0$i $coln$i++) {
    
$col_info ibase_field_info($rs$i);
    echo 
"name: "$col_info['name']. "\n";
    echo 
"alias: "$col_info['alias']. "\n";
    echo 
"relation: "$col_info['relation']. "\n";
    echo 
"length: "$col_info['length']. "\n";
    echo 
"type: "$col_info['type']. "\n";
}
?>

参见

User Contributed Notes

tiago at econtabil dot com 13-Oct-2009 07:55
In Firebird 1.5 this function INT64 returned to the fields created as floating point numbers. In Firebird 2.x this function returns as NUMERIC (SIZE, PRECISION). Example: NUMERIC (18,2)

In Brazilian Portuguese:
No Firebird 1.5 esta fun??o retornava INT64 para os campos criados como numéricos com ponto flutuante. No Firebird 2.x esta fun??o retorna como NUMERIC(TAMANHO, PRECISAO). Exemplo: NUMERIC(18,2)
tiago at econtabil dot com 07-Apr-2006 04:40
Example:
$db = ibase_connect($host,$username,$password, "None", 0, 3 ) or die ('Error trying connect to Database!');

$select = "SELECT * from TABLE";   
$sql = ibase_query($db,$select) or die($select);

$total_fields= ibase_num_fields($sql);

for ($j = 1; $j <= $total_fields; $j++)
  {
    $info_field = ibase_field_info($sql, $j-1 );
    print("Name: " . $info_campo[1]); // print the field name
    print("Type:". $info_campo[4]); //print the field type
    print("Size: " . $info_campo[3]); // print the field size
  }
This function does not return the type from the fields as we are accustomed in interbase.
Example: Fields VARCHAR are returns as VARYING. Fields of the type CHAR return TEXT.

Tested in Firebird 1.5 Super Server.