dba_popen
(PHP 4, PHP 5, PHP 7, PHP 8)
dba_popen — Abre o banco de dados de forma persistente
Descrição
string
$path
,string
$mode
,?string
$handler
= null
,int
$permission
= 0644,int
$map_size
= 0,?int
$flags
= null
): Dba\Connection|false
dba_popen() estabelece uma instância persistente do banco de dados
informado em path
com o modo definido por mode
usando o manipulador
especificado em handler
.
Parâmetros
path
-
Normalmente um caminho comum no seu sistema de arquivos.
mode
-
Define os modos:
r
para acesso de leitura,w
para acesso de leitura/gravação a um baco de dados já existente,c
para leitura/gravação e criação de banco de dados se ainda não existir, en
para criar, truncar e acesso leitura/gravação. handler
-
O nome do manipulador que deve ser usado para acessar o arquivo definido em
path
. São passados todos os parâmetros opcionais fornecidos para dba_popen() e pode agir em nome deles. Sehandler
fornull
, o manipulador padrão será invocado. permission
-
Parâmetro opcional int que é passado ao driver. Tem o mesmo significado que o parâmetro
permissions
de chmod() (*nix) e o padrão é0644
.Os drivers
db1
,db2
,db3
,db4
,dbm
,gdbm
,ndbm
elmdb
suportam o parâmetropermission
. map_size
-
Parâmetro opcional int que é passado ao driver. Seu valor deve ser um múltiplo do tamanho da página do sistema operacional, ou zero, para usar o tamanho padrão do mapa.
Somente o driver
lmdb
aceita o parâmetromap_size
. flags
-
Permite passar opções aos drivers de banco de dados. Atualmente, suporte apenas ao driver LMDB com as opções
DBA_LMDB_USE_SUB_DIR
eDBA_LMDB_NO_SUB_DIR
.
Valor Retornado
Retorna uma instância de Dba\Connection em caso de sucesso ou false
em caso de falha.
Erros/Exceções
false
é retornado e um erro de nível E_WARNING
é emitido quando
handler
for null
mas não houver manipulador padrão.
Registro de Alterações
Versão | Descrição |
---|---|
8.4.0 | Retorna agora uma instância de Dba\Connection; anteriormente, retornava um resource. |
8.2.0 |
flags foi adicionado.
|
8.1.0 |
handler agora pode ser nulo.
|
7.3.14, 7.4.2 |
O driver lmdb agora suporta o parâmetro adicional
map_size .
|