As of PHP 5.2.6, it seems that the type F (Float) is supported ( ext/dbase/dbase.c +713 ), with a length of 20 characters.
http://www.dbase.com/KnowledgeBase/int/db7_file_fmt.htm precises : Number stored as a string, right justified, and padded with blanks to the width of the field
dbase_get_header_info
(PHP 5)
dbase_get_header_info — データベースのヘッダ情報を得る
説明
array dbase_get_header_info
( int $dbase_identifier
)
指定したデータベースリンク ID のカラム構造についての情報を返します。
返り値
データベースの各カラムについての要素を格納した配列を返します。 配列の添字は 0 から始まります。
配列の各要素には、以下に述べるような形式の連想配列で カラムの情報が格納されます。
- name
- カラム名。
- type
- カラムのデータ型を可読形式(例: date、boolean など)で格納。
- length
- カラムのバイト数。
- precision
- カラムの数値の精度。
- format
- カラムに対して推奨される printf() でのフォーマット指定。
- offset
- 行の最初からのバイトオフセット。
ヘッダ情報が読み込めない場合には FALSE を返します。
例
例1 dBase データベースファイルの情報の表示
<?php
// dbase ファイルのパス
$db_path = "/tmp/test.dbf";
// dbase ファイルのオープン
$dbh = dbase_open($db_path, 0)
or die("Error! Could not open dbase database file '$db_path'.");
// カラム情報の取得
$column_info = dbase_get_header_info($dbh);
// 情報の表示
print_r($column_info);
?>
dbase_get_header_info
Eliovir
24-Jul-2008 05:04
24-Jul-2008 05:04
christoph dot eck at bluewin dot ch
12-Sep-2006 03:58
12-Sep-2006 03:58
Field Types
*********
Not all field types of DBase are supported. Look below for the internal field type definitions of PHP 5.1.x.
The storage symbols of DBase are C (stands for character), D (date) , I (integer), N (number), L (boolean), M (memo). All other symbols like B, @, l, +, F, O and G are defined as unknown.
Sources
*********
http://www.dbase.com/KnowledgeBase/int/db7_file_fmt.htm
PHP-Source-5.1.6 ext/dbase/dbase.c (line 786)
