Anforderungen

Das Verhalten der dba-Funktionen ist teilweise abhängig von der Implementation des zugrundeliegenden Datenbanksystems. Funktionen wie zum Beispiel dba_optimize() und dba_sync() funktionieren vielleicht bei einem Datenbanksystem und tun gar nichts bei einem anderen. Die unterstützten DBA-Handler müssen heruntergeladen und installiert werden.

Liste der DBA-Handler
Handler Hinweise
dbm Dbm ist der ursprüngliche und älteste Typ der "Berkeley DB" Datenbanken. Wenn möglich, sollten Sie diesen Typ vermeiden. Die in DB2 und gdbm enthaltenen Kompatibilitätsfunktionen werden nicht unterstützt, da sie nur auf Quellcode-Basis kompatibel sind, aber das original dbm-Format nicht bearbeiten können.
ndbm Ndbm ist neuer und flexibler als Dbm. Es hat jedoch die meisten Einschränkungen von Dbm übernommen und ist daher ebenfalls nicht empfehlenswert.
gdbm Gdbm ist der » GNU Datenbank Manager.
db2 DB2 ist für » Oracle Berkeley DB 2. Es wird beschrieben als "Werkzeugsatz mit eingebauter Hochleistungs-Unterstützung von Datenbanken sowohl für Standalone- als auch für Client/Server-Anwendungen".
db3 DB3 ist für » Oracle Berkeley DB 3.
db4 DB4 ist für » Oracle Berkeley DB 4 oder 5. Ab PHP 5.3.3 kann er mit BDB 5 verwendet werden.
cdb Cdb ist "ein schnelles, zuverlässiges und kompaktes Paket zum Erstellen und Auslesen konstanter Datenbanken." Es stammt vom Autor von qmail und kann bei » http://cr.yp.to/cdb.html heruntergeladen werden. Da es für konstante Daten ausgelegt ist, werden nur lesende Operationen unterstützt. Durch die interne cdb-Bibliothek werden auch schreibende Operationen (aber keine Aktualisierungen) unterstützt.
cdb_make Bei Verwendung der in PHP mitgelieferten cdb-Bibliothek können cdb-Dateien erzeugt (aber nicht aktualisiert) werden.
flatfile Steht wegen der Kompatibilität mit der veralteten dbm-Erweiterung zur Verfügung und sollte vermieden werden. Sie können ihn aber bei Dateien verwenden, die in diesem Format erzeugt wurden. Das geschieht, wenn configure keine externe Bibliothek finden konnte.
inifile Steht zur Verfügung, damit php.ini-Dateien über PHP-Skripts geändert werden können. Wenn mit ini-Dateien gearbeitet wird, können Arrays der Form array(0=>gruppe,1=>wert_name) oder Zeichenketten der Form "[gruppe]wert_name" (gruppe ist optional) übergeben werden. Da die Funktionen dba_firstkey() und dba_nextkey() die Zeichenketten-Darstellung des Schlüssels zurückgeben, steht die Funktion dba_key_split() zur Verfügung, die es ermöglicht, die Zeichenketten-Schlüssel in Array-Schlüssel umzuwandeln, ohne dass das FALSE verloren geht.
qdbm Die qdbm-Bibliothek kann bei » http://fallabs.com/qdbm/index.html heruntergeladen werden.
tcadb Steht ab PHP 5.4.0 zur Verfügung. Die Tokyo Cabinet Bibliothek kann von » http://fallabs.com/tokyocabinet/ heruntergeladen werden.
lmdb Steht ab PHP 7.2.0 zur Verfügung. Die Lightning Memory-Mapped Database Bibliothek kann von » https://symas.com/lmdb/ herunter geladen werden.

Beim Aufruf von dba_open() oder dba_popen() muss einer der Handler-Namen als Argument angegeben werden. Die Liste der tatsächlich verfügbaren Handler lässt sich mittlels phpinfo() oder dba_handlers() angezeigen.