注意:
此扩展已移至 » PECL 存储库,自 PHP 5.3.0 起不再与 PHP 捆绑在一起。
这些函数允许您访问存储在 dBase 格式 (dbf) 数据库中的记录。
我们建议不要使用 dBase 文件作为生产数据库。使用 » SQLite 或选择任何真正的 SQL 服务器,例如 » MySQL 或 » Postgres,它们是 PHP 中的常见选择。dBase 支持是为了允许您将数据导入和导出到您的 Web 数据库,因为该文件格式被 Windows 电子表格和组织程序广泛理解。
从 dbase 7.0.0 开始,数据库通过 flock() 自动锁定。之前没有锁定支持,因此两个并发 Web 服务器进程修改同一个 dBase 文件很可能会破坏您的数据库。这甚至可能发生在 dbase 7.0.0+ 上,在多线程 SAPI 实现锁定在进程级别的系统上。
dBase 文件是简单的固定长度记录顺序文件。记录被追加到文件的末尾,删除的记录将保留,直到您调用 dbase_pack()。
仅支持 dbf 文件级别 3 (dBASE III+) - 5 (dBASE V)。可用的 dBase 字段类型如下所示
字段 | dBase 类型 | 格式 | 附加信息 |
---|---|---|---|
M |
备忘 | n/a | PHP 不支持此类型,此类字段将被忽略 |
D |
日期 | YYYYMMDD |
字段长度限制为 8 |
T |
日期时间 | YYYYMMDDhhmmss.uuu |
(FoxPro) 不进行有效性检查。从 dbase 7.0.0 开始可用。 |
N |
数字 | 一个数字 | 您必须声明一个长度和一个精度(小数点后的位数)。 |
F |
浮点 | 一个浮点数 | 与 N 相同。 |
C |
字符串 | 一个字符串 | 您必须声明一个长度。检索数据时,字符串将用空格右填充以匹配声明的长度。存储数据时,过长的字符串将被静默截断。 |
L |
布尔 |
T 或 Y 代表 true ,F 或 N 代表 false ,? 代表未初始化。 |
从 dbase 7.0.0 开始,返回为 bool (true 或 false ),或 null 代表未初始化的字段。以前,返回为 int (1 或 0 )。 |
注意:
从 dbase 7.0.0 开始,支持
DBASE_TYPE_FOXPRO
数据库的可空字段。如果一个字段是可空的,传递null
将设置相应的标志,并且在以后检索时,字段值将为null
。
注意:
不支持索引或备忘字段。