Nota:
Esta extensão foi movida para o repositório » PECL e não é mais distribuída com o PHP desde a versão 5.3.0.
Essas funções permitem acessar registros armazenados em bancos de dados no formato dBase (dbf).
Não é recomendado usar arquivos dBase como banco de dados de produção. Use o » SQLite ou escolha qualquer servidor SQL real; » MySQL ou » Postgres são escolhas comuns com o PHP. O suporte ao dBase está aqui para permitir importação e exportação de dados de e para seu banco de dados da web, porque o formato de arquivo é comumente entendido por planilhas e organizadores do Windows.
A partir do dBase 7.0.0, os bancos de dados são bloqueados automaticamente via flock(). Não havia suporte para bloqueio anteriormente, portanto, dois processos simultâneos de servidor web modificando o mesmo arquivo dBase provavelmente teriam arruinado um banco de dados. Isso pode acontecer mesmo com o dBase 7.0.0+ em sistemas que implementam os bloqueios no nível do processo com SAPIs multithread.
Os arquivos dBase são arquivos sequenciais simples de registros de comprimento fixo. Os registros são anexados ao final do arquivo e os registros excluídos são mantidos até a chamada a dbase_pack().
Somente arquivos dbf de nível 3 (dBASE III+) a 5 (dBASE V) são suportados. Os tipos de campos dBase disponíveis são:
Campo | Tipo dBase | Formato | Informações adicionais |
---|---|---|---|
M |
Memo | n/a | Este tipo não é suportado pelo PHP, tal campo será ignorado |
D |
Date | YYYYMMDD |
O comprimento do campo é limitado a 8 |
T |
DateTime | YYYYMMDDhhmmss.uuu |
(FoxPro) Nenhuma verificação de validade é feita. Disponível a partir do dBase 7.0.0. |
N |
Number | Um número | Deve-se declarar um comprimento e uma precisão (o número de dígitos após o separador de decimais). |
F |
Float | Um número float | Igual a N . |
C |
String | Uma string | Deve-se declarar um comprimento. Ao recuperar dados, a string será preenchida à direita com espaços para caber no comprimento declarado. Strings muito longas serão truncadas silenciosamente ao armazenar dados. |
L |
Boolean |
T ou Y para true ,
F ou N para false ,
? para não inicializado.
|
A partir do dBase 7.0.0, retornado como um bool (true ou false ),
ou null para campos não inicializados.
Anteriormente, retornado como int (1 ou 0 ).
|
Nota:
A partir do dBase 7.0.0, campos anuláveis são suportados para bancos de dados
DBASE_TYPE_FOXPRO
. Se um campo for anulável, passarnull
definirá o respectivo sinalizador e, na recuperação posterior, o valor do campo seránull
.
Nota:
Não há suporte para índices ou campos memo.