Installation
By using the --enable-dba=shared configuration option you
can build a dynamic loadable module to enable PHP for basic
support of dbm-style databases. You also have to add support
for at least one of the following handlers by specifying the
--with-XXXX configure switch to your PHP configure line.
Warning
After configuring and compiling PHP you must execute the
following test from commandline: php run-tests.php ext/dba.
This shows whether your combination of handlers works. Most
problematic are dbm and ndbm which conflict with many installations.
The reason for this is that on several systems these libraries
are part of more than one other library. The configuration
test only prevents you from configuring malfaunctioning
single handlers but not combinations.
Table 2. Supported DBA handlers
Handler Configure Switch
dbm To enable support for dbm add --with-dbm[=DIR].
Note: dbm normally is a wrapper which often results in failures.
This means you should only use dbm if you are sure it works
and if you really need this format.
ndbm To enable support for ndbm add --with-ndbm[=DIR].
Note: ndbm normally is a wrapper which often results in
failures. This means you should only use ndbm if you are
sure it works and if you really need this format.
gdbm To enable support for gdbm add --with-gdbm[=DIR].
db2 To enable support for db2 add --with-db2[=DIR].
Note: db2 conflicts with db3 and db4.
db3 To enable support for db3 add --with-db3[=DIR].
Note: db3 conflicts with db2 and db4.
db4 To enable support for db4 add --with-db4[=DIR].
Note: db4 conflicts with db2 and db3.
Note: This was added in PHP 4.3.2. In earlier versions
of PHP you need to use --with-db3=DIR with DIR being the
path to db4 library. It is not possible to use db versions
starting from 4.1 with PHP prior to version 4.3.0. Also,
the db libraries with versions 4.1 through 4.1.24 cannot
be used in any PHP version.
cdb To enable support for cdb add --with-cdb[=DIR].
Note: Since PHP 4.3.0 you can omit DIR to use the bundled
cdb library that adds the cdb_make handler which allows
creation of cdb files and allows to access cdb files on
the network using PHP's streams.
flatfile To enable support for flatfile add --with-flatfile.
Note: This was added in PHP 4.3.0 to add compatibility with
deprecated dbm extension. Use this handler only when you
cannot install one of the libraries required by the other
handlers and when you cannot use bundled cdb handler.
inifile To enable support for inifile add --with-inifile.
Note: This was added in PHP 5.0.0 and allows to read and
set microsoft style ini files (like the php.ini file).
qdbm To enable support for qdbm add --with-qdbm[=DIR].
Note: qdbm conflicts with dbm and gdbm.
Note: This was added in PHP 5.0.0. The qdbm library can
be loaded from http://qdbm.sourceforge.net.
Note: Up to PHP 4.3.0 you are able to add both db2 and
db3 handler but only one of them can be used internally.
That means that you cannot have both file formats. Starting
with PHP 5.0.0 there is a configuration check avoid such
missconfigurations.
Runtime Configuration
This extension has no configuration directives defined in
php.ini.
Resource Types
The functions dba_open() and dba_popen() return a handle
to the specified database file to access which is used by
all other dba-function calls.
Predefined Constants
This extension has no constants defined.
|