(PHP 4, PHP 5, PHP 7, PHP 8)
dba_open — Ouvre une base de données DBA
$path,$mode,$handler = null,$permission = 0644,$map_size = 0,$flags = null
   dba_open() établit une connexion à
   la base identifiée par path avec le
   mode mode et l'identifiant 
   handler.
  
pathChemin sur votre système de fichiers.
mode
       Il vaut r pour lecture seule, w pour
       lecture/écriture, c pour lecture/écriture, et
       création si la base n'existe pas, et n pour
       création, écrasement et accès en lecture/écriture.
       La base de données est créée en mode BTree ; les autres modes (comme Hash ou
       Queue) ne sont pas supportés.
      
       De plus, vous pouvez choisir la méthode de verrouillage de la base avec le 
       caractère suivant. Utilisez l pour verrouiller la base avec un 
       fichier .lck, ou d pour verrouiller
       la base elle-même. Il est important que vos application utilisent ces
       options de manière cohérente.
      
       Si vous voulez tester la possibilité d'accès, et ne pas attendre la
       disponibilité du verrou, vous pouvez ajouter la lettre t
       comme troisième caractère. Lorsque vous êtes absolument certain que votre base
       ne requière pas de verrou, vous pouvez utiliser le tiret -
       à la place de l ou d. 
       Lorsque vous n'utilisez ni d, ni l ni 
       -, dba va verrouiller en mode d.
      
Note:
Il ne peut y avoir qu'un seul type d'écriture dans la base. Lorsque vous utilisez dba sur un serveur web, et que plusieurs requêtes HTTP effectuent des écritures, elles ne peuvent être faites que l'une après l'autre. De même, la lecture durant l'écriture n'est pas possible. L'extension dba utilise un verrou pour éviter ces problèmes. Voici la table de verrouillage :
Verrouillage DBA déjà ouverte mode= "rl"mode= "rlt"mode= "wl"mode= "wlt"mode= "rd"mode= "rdt"mode= "wd"mode= "wdt"non-ouverte ok ok ok ok ok ok ok ok mode= "rl"ok ok attente falseillégal illégal illégal illégal mode= "wl"attente falseattente falseillégal illégal illégal illégal mode= "rd"illégal illégal illégal illégal ok ok attente falsemode= "wd"illégal illégal illégal illégal attente falseattente false
- ok: Le second appel réussit.
- wait: Le second appel attend que dba_close() soit appelé par le premier script.
- false: Le second appel retourne
false.- illégal: vous ne devez pas mélanger les options
"l"et"d"pour le paramètremode.
handler
       Le nom du gestionnaire 
       qui doit être utilisé pour accéder à path. 
       C'est passé à tous les paramètres facultatifs donnés à 
       dba_open() et peut agir au nom d'eux.
       Si le paramètre handler est null,
       alors le gestionnaire par défaut est invoqué.
      
permission
       Paramètre facultatif de type entier qui est passé au pilote. Il a la même signification que
       le paramètre permissions de la fonction chmod(),
       et a une valeur par défaut de 0644.
      
       Les pilotes db1, db2,
       db3, db4, dbm,
       gdbm,
       Les pilotes ndbm et lmdb prennent en charge le
       paramètre permission.
      
       Le pilote lmdb supporte deux paramètres additionels.
       Le premier permet de définir le $filemode
       (voir description ci-dessus), et le second permet de définir la
       $mapsize, dont la valeur devrait être un multiple de
       la taille de page du système d'exploitation, ou zéro pour utiliser la
       mapsize par défaut.
       La paramètre $mapsize est supporté à partir de
       PHP 7.3.14 et 7.4.2, respectivement.
      
map_sizeParamètre facultatif de type entier qui est passé au pilote. Sa valeur doit être un multiple de la taille de page du système d'exploitation, ou zéro pour utiliser la taille de mappage par défaut.
       Seul le pilote lmdb accepte le paramètre map_size.
      
flags
       Drapeaux à passer aux pilotes de base de données. Si null, les drapeaux par défaut seront fournis.
       Actuellement, seul le pilote LMDB prend en charge les drapeaux suivants :
       DBA_LMDB_USE_SUB_DIR et
       DBA_LMDB_NO_SUB_DIR.
      
   false est retourné et une erreur de niveau E_WARNING est émise lorsque
   le paramètre handler est null, mais qu'aucun gestionnaire par défaut n'est disponible.
  
   Retourne un gestionnaire positif en cas de succès ou false si une erreur survient.
  
| Version | Description | 
|---|---|
| 8.2.0 | Le paramètre flagsest ajouté. | 
| 8.2.0 | Le paramètre handlerest désormais nullable. | 
| 7.3.14, 7.4.2 | Le pilote lmdbsupporte désormais un paramètre
       additionelmap_size. |