2024年PHP日本大会

需求

各个方面的行为取决于底层数据库的实现。诸如 dba_optimize()dba_sync() 之类的函数,对于某些数据库会按预期执行,而对于其他数据库则不会执行任何操作。您必须下载并安装受支持的dba处理程序。

DBA处理程序列表
处理程序 备注
dbm Dbm是最古老的(原始的)Berkeley DB风格数据库类型。如果可能,应避免使用它。我们不支持内置于DB2和gdbm中的兼容性函数,因为它们仅在源代码级别兼容,但无法处理原始dbm格式。
ndbm Ndbm是一种比dbm更新、更灵活的类型。它仍然具有dbm的大部分任意限制(因此已弃用)。
gdbm Gdbm是 » GNU数据库管理器
db2 DB2适用于 » Oracle Berkeley DB 2。它被描述为“一个程序工具包,为独立应用程序和客户端/服务器应用程序提供高性能的内置数据库支持”。
db3 DB3适用于 » Oracle Berkeley DB 3
db4 DB4适用于 » Oracle Berkeley DB 4或5。从PHP 5.3.3开始,此选项可与BDB 5一起使用。
cdb Cdb是“一个快速、可靠、轻量级的用于创建和读取常量数据库的包”。它来自qmail的作者,可以在 » http://cr.yp.to/cdb.html 找到。由于它是常量,我们只支持读取操作。我们通过内部cdb库支持写入(而不是更新)。
cdb_make 当使用捆绑的cdb库时,我们支持创建(而不是更新)cdb文件。
flatfile 此功能是为了与已弃用的dbm扩展兼容而提供的,应避免使用。但是,您可以在以这种格式创建文件的场合使用它。当configure找不到任何外部库时,就会发生这种情况。
inifile 此功能允许从PHP脚本中修改php.ini文件。处理ini文件时,您可以传递表单为array(0=>group,1=>value_name)的数组或表单为“[group]value_name”的字符串,其中group是可选的。由于函数 dba_firstkey()dba_nextkey() 返回键的字符串表示形式,因此存在函数 dba_key_split(),它允许将字符串键转换为数组键而不会丢失false
qdbm 可以从 » http://fallabs.com/qdbm/index.html 下载qdbm库。
tcadb 可以从 » http://fallabs.com/tokyocabinet/ 下载Tokyo Cabinet库。
lmdb 从PHP 7.2.0开始可用。可以从 » https://symas.com/lmdb/ 下载Lightning Memory-Mapped Database库。

调用 dba_open()dba_popen() 函数时,必须提供其中一个处理程序名称作为参数。实际可用的处理程序列表可以通过调用 phpinfo()dba_handlers() 来显示。

添加备注

用户贡献的注释

此页面没有用户贡献的注释。
To Top