CakeFest 2024: The Official CakePHP Conference

dba_popen

(PHP 4, PHP 5, PHP 7, PHP 8)

dba_popenÖffnet eine persistente Datenbank-Verbindung

Beschreibung

dba_popen(
    string $path,
    string $mode,
    ?string $handler = null,
    int $permission = 0644,
    int $map_size = 0,
    ?int $flags = null
): resource|false

dba_popen() stellt eine persistente Datenbankinstanz für path mit mode her und benutzt dabei den Handler handler.

Parameter-Liste

path

Ein gültiger Pfad im Dateisystem.

mode

Das ist r für lesenden Zugriff, w für lesenden und schreibenden Zugriff auf eine existierende Datenbank, c für lesenden und schreibenden Zugriff und Erstellen der Datenbank, falls sie noch nicht existiert, und n für das Erstellen einer Datenbank, bzw. deren Zurücksetzen auf die Größe 0, falls sie schon existiert, und lesenden und schreibenden Zugriff.

handler

Der Name des Handlers, der für den Zugriff auf path benutzt werden soll. Er bekommt alle optionalen Argumente übergeben, die der Funktion dba_popen() mitgegeben wurden, und kann damit in deren Name verfahren. Wenn handler null ist, wird der Standard-Handler aufgerufen.

permission

Ein optionaler Integer-Parameter, der an den Treiber übergeben wird. Er hat dieselbe Bedeutung wie der Parameter permissions bei chmod(). Der Standardwert ist 0644.

Der Parameter permission wird vom db1-, db2-, db3-, db4-, dbm-, gdbm-, ndbm- und lmdb-Treiber unterstützt.

map_size

Ein optionaler Integer-Parameter, der an den Treiber übergeben wird. Sein Wert sollte ein Vielfaches der Größe einer Speicherseite (Page Size) des Betriebssystems sein. Wenn Null angegeben wird, wird die Standard-Map-Size verwendet.

Der Parameter map_size wird nur vom lmdb-Treiber akzeptiert.

flags

Die Flags, die an den Datenbanktreiber übergeben werden. Derzeit unterstützt nur der LMDB-Treiber die Flags DBA_LMDB_USE_SUB_DIR und DBA_LMDB_NO_SUB_DIR.

Rückgabewerte

Gibt eine positive Verbindungskennung zurück. Bei einem Fehler wird false zurückgegeben.

Fehler/Exceptions

Wenn handler null ist, aber kein Standard-Handler zur Verfügung steht, wird false zurückgegeben und ein Fehler der Stufe E_WARNING ausgegeben.

Changelog

Version Beschreibung
8.2.0 Der Parameter flags wurde hinzugefügt.
8.1.0 Der Parameter handler ist nun nullable (akzeptiert den null-Wert).
7.3.14, 7.4.2 Der lmdb-Treiber unterstützt nun zusätzlich den Parmeter map_size.

Siehe auch

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top