(PHP 4, PHP 5, PHP 7, PHP 8)
dba_popen — 持續開啟資料庫
$path,$mode,$handler = null,$permission = 0644,$map_size = 0,$flags = null
dba_popen() 會使用 handler 建立一個 path 的永久資料庫實例,並以 mode 模式開啟。
path通常是檔案系統中的正規路徑。
mode可以是 r 表示讀取存取,w 表示對現有資料庫的讀寫存取,c 表示讀寫存取,如果資料庫不存在則建立,以及 n 表示建立、截斷和讀寫存取。
handler用於存取 path 的 處理器 名稱。傳遞給 dba_popen() 的所有選用參數都會傳遞給它,它可以代表這些參數執行操作。如果 handler 為 null,則會呼叫預設處理器。
permission選用的 整數 參數,會傳遞給驅動程式。它的意義與 chmod() 的 permissions 參數相同,預設值為 0644。
db1、db2、db3、db4、dbm、gdbm、ndbm 和 lmdb 驅動程式支援 permission 參數。
map_size選用的 整數 參數,會傳遞給驅動程式。其值應為作業系統頁面大小的倍數,或零,以使用預設的 mapsize。
lmdb 驅動程式接受 map_size 參數。
flags允許將旗標傳遞給資料庫驅動程式。目前僅支援 LMDB 的 DBA_LMDB_USE_SUB_DIR 和 DBA_LMDB_NO_SUB_DIR。
成功時返回 Dba\Connection 實例,失敗時返回 false。
| 版本 | 說明 |
|---|---|
| 8.4.0 | 現在返回 Dba\Connection 實例;以前返回的是 資源。 |
| 8.2.0 |
新增了 flags。 |
| 8.1.0 |
handler 參數現在可以為 null。 |
| 7.3.14, 7.4.2 | lmdb 驅動程式現在支援額外的 map_size 參數。 |