Вступ
Зауваження :
Цей модуль був переміщений до репозиторію » 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 |
C | String | A string | Ви повинні вказати довжину. При отриманні даних рядок буде доповнено праворуч пробілами до заявленої довжини. Довші рядки будуть обрізані без попередження. |
L | Boolean | T илиY для**true ** F илиN для**false ** ? - не ініціалізовано. | З dbase 7.0.0, повертається як bool (true або false ), або null для не ініціалізованих полів. Раніше поверталося як int ( или |
Зауваження :
Починаючи з dbase 7.0.0, підтримуються обнулювані поля для баз даних
DBASE_TYPE_FOXPRO
Если поле обнуляемое. При передачеnull
будет установлен соответствующий флаг и, при дальнейшем извлечении поля, будет возвращено значениеnull
Зауваження :
Підтримки для індексів та memo-полів немає.