Введение
Замечание:
Это расширение было перемещено в репозиторий » PECL и больше не поставляется с PHP 5.3.0.
Эти функции позволяют получить доступ к записям, хранящимся в DBase-формате (DBF) баз данных.
Мы не рекомендуем использовать файлы DBase файлы для использования в промышленной эксплуатации. Лучше выберите » SQLite или какую-либо настоящую базу данных; » MySQL или » Postgres являются наиболее частым выбором при работе с PHP. Поддержка dBase больше нужна для импорта и экспорта данных вашей базы данных, поскольку формат ее файлов понятен большинству пакетов электронных таблиц (например, Excel).
С версии dbase 7.0.0, база данных автоматически блокируется с помощью flock(). Ранее поддержки блокировок не было, так что два конкурирующих процесса веб-сервера, изменяющие один и тот же файл dBase могли с легкостью испортить базу. Такое может произойти даже и в dbase 7.0.0+ на системах, которые реализуют блокировку на уровне процесса с многопоточными SAPI.
База данных dBase является просто последовательностью файлов с фиксированной длиной записи. Записи добавляются в конец файла и удаленные записи будут (физически) хранится до вызова dbase_pack().
Поддерживаются только dbf-файлы уровня 3 (dBASE III+) - 5 (dBASE V). Доступные типы полей dBase:
Поле | dBase тип | Формат | Дополнительная информация |
---|---|---|---|
M |
Memo | n/a | Тип не поддерживается PHP, такое поле будет игнорироваться |
D |
Date | YYYYMMDD |
Длина поля ограничена 8 |
T |
DateTime | YYYYMMDDhhmmss.uuu |
(FoxPro) Проверка на корректность не производится. Доступно с dbase 7.0.0. |
N |
Number | Число | Вы должны указать длину и точность (количество цифр после десятичной точки). |
F |
Float | Число с плавающей запятой | То же, что и N . Доступно с PHP 5.2.0 |
C |
String | A string | Вы должны указать длину. При получении данных, строка будет дополнена справа пробелами до заявленной длины. Более длинные строки будут обрезаны без предупреждения. |
L |
Boolean |
T или Y для true ,
F или N для false ,
? - не инициализированно.
|
С dbase 7.0.0, возвращается как bool (true или false ),
или null для не инициализированных полей.
Ранее возвращалось как int (1 или 0 ).
|
Замечание:
Начиная с dbase 7.0.0 поддерживаются обнуляемые поля для баз данных
DBASE_TYPE_FOXPRO
. Если поле обнуляемое. При передачеnull
будет установлен соответствующий флаг и, при дальнейшем извлечении поля, будет возвращено значениеnull
.
Замечание:
Поддержки для индексов и memo-полей нет.