Em um sistema web eu desenvolvi um formatador e criador de relatórios automático em PDF. Para fazer as totalizações automaticamente, eu sempre testei se o tipo de campo de determinada coluna era INT64, utilizando $col_info[‘type’]. Mas quando atualizamos o server com Firebird 2 e PHP 5.x esta função parou de funcionar. Fiz alguns testes e vi que nesta versão de PHP/Firebird os números com ponto flutuante retornam como NUMERIC(tamanho, precisão), e não mais como INT64. No meu caso específico, retorna como NUMERIC(18,2), que foi como criei os meus campos.
O problema disso é que se crio um campo com ponto flutuante com tamanho diferente de 18,2, terei que criar uma regra em minha classe PHP para tratar disso. Mas tudo bem, o importante é que achei a solução do problema citado.
Espero que este post seja útil.