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)
ibase_field_info
(PHP 5)
ibase_field_info — Ottiene informazioni su un campo
Descrizione
array ibase_field_info
( int
$result
, int $field number
)Restituisce un array con informazioni relative a un campo dopo che una query select è stata eseguita. L'array ha la forma name, alias, relation, length e type.
$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";
}
tiago at econtabil dot com ¶
3 years ago
tiago at econtabil dot com ¶
7 years ago
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.
