123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- These functions build the foundation for accessing Berkeley DB style
- databases.
- This is a general abstraction layer for several file-based databases. As
- such, functionality is limited to a common subset of features supported
- by modern databases such as Sleepycat Software's DB2. (This is not to be
- confused with IBM's DB2 software, which is supported through the ODBC
- functions.)
- This extensions allows to work with the following databases:
- dbm DBM is the oldest (original) type of Berkeley DB style databases.
- You should avoid it, if possible. We do not support the
- compatibility functions built into DB2 and gdbm, because they are
- only compatible on the source code level, but cannot handle the
- original dbm format.
- ndbm NDBM is a newer type and more flexible than dbm. It still has
- most of the arbitrary limits of dbm (therefore it is deprecated).
- gdbm GDBM is the GNU database manager.
- db2 DB2 is Sleepycat Software's DB2. It's described as "a programmatic
- toolkit that provides high-performance built-in database support
- for both standalone and client/server applications.
- db3 DB3 is Sleepycat Software's DB3.
- db4 DB4 is Sleepycat Software's DB4. This is available since PHP 5.0.
- cdb CDB is "a fast, reliable, lightweight package for creating and
- reading constant databases." It is from the author of qmail and
- can be found at http://cr.yp.to/cdb.html. Since it is constant,
- we support only reading operations. And since PHP 4.3.0 we support
- writing (not updating) through the internal cdb library.
- cdb_make Since PHP 4.3.0 we support creation (not updating) of cdb files
- when the bundled cdb library is used.
- flatfile This is available since PHP 4.3.0 for compatibility with the
- deprecated dbm extension only and should be avoided. However you
- may use this where files were created in this format. That happens
- when configure could not find any external library.
- inifile This is available since PHP 4.3.3 to be able to modify php.ini
- files from within PHP scripts. When working with ini files you
- can pass arrays of the form array(0=>group,1=>value_name) or
- strings of the form "[group]value_name" where group is optional.
- As the functions dba_firstkey() and dba_nextkey() return string
- representations of the key there is a new function dba_key_split()
- available since PHP 5 which allows to convert the string keys into
- array keys without loosing FALSE.
- qdbm This is available since PHP 5.0.0. The qdbm library can be loaded
- from http://qdbm.sourceforge.net.
- 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.
|