Einführung

Hinweis:

Diese Erweiterung wurde ins » PECL-Repositorium verschoben und ist nicht mehr Teil von PHP ab PHP 5.3.0.

Diese Funktionen erlauben Ihnen den Zugriff auf Datensätze, die in Datenbanken im dBase-Format (dbf) vorliegen.

Warnung

Wir empfehlen, keine dBase-Dateien als Produktions-Datenbank zu benutzen. Wählen Sie dafür stattdessen einen echten SQL-Server; » MySQL oder » Postgres sind bei PHP eine gute Wahl. Die dBase-Unterstützung durch PHP dient hauptsächlich dem Im- und Export von Daten zu oder aus ihrer Web-Datenbank, weil das DBF-Datei-Format allgemein von Windows-Tabellenkalulationen und -Zeitplanern verstanden wird.

Achtung

Von dbase 7.0.0 an werden Datenbanken automatisch per flock() gesperrt. Zuvor wurden Sperren nicht unterstützt, so dass zwei Webserver-Prozesse, die gleichzeitig dieselbe dBase-Datei änderten, mit hoher Wahrscheinlichkeit die Datenbank ruinierten. Dies kann auf Systemen, die die Sperren auf Prozessebene implementieren unter multithreaded SAPIS, wie etwa ISAPI, auch noch mit dbase 7.0.0+ passieren.

dBase-Dateien sind einfache sequentielle Dateien mit fester Datensatzlänge. Neue Datensätze werden am Dateiende angehängt und gelöschte Datensätze werden beibehalten, bis Sie dbase_pack() aufrufen.

Nur dbf Datei-Level 3 (dBASE III+) - 5 (dBASE V) werden unterstützt. Folgende dBase-Feldtypen stehen stehen zur Verfügung:

Verfügbare Feldtypen
Feld dBase-Typ Format Zusätzliche Informationen
M Memo n/a Dieser Typ wird von PHP nicht unterstützt, ein solches Feld wird ignoriert
D Date YYYYMMDD Die Feldlänge ist auf acht Zeichen begrenzt
T DateTime YYYYMMDDhhmmss.uuu (FoxPro) Es wird keine Gültigkeitsprüfung vorgenommen. Verfügbar seit dbase 7.0.0.
N Number Eine Zahl Sie müssen die Länge und die Genauigkeit (die Anzahl der Nachkommastellen) angeben.
F Float Eine Gleitkommazahl Dasselbe wie N. Die Unterstützung für diesen Feldtyp wurde in PHP 5.2.0 hinzugefügt
C String Eine Zeichenkette Sie müssen die Länge angeben. Wenn Daten eingetragen werden, werden Leerzeichen ans Ende der Zeichenkette angehängt, bis die festgelegte Länge erreicht ist. Überlange Zeichenketten werden stillschweigend abgeschnitten, wenn die Daten gespeichert werden.
L Boolean T oder Y für TRUE, F oder N für FALSE, ? für nicht initialisiert. Wird seit dbase 7.0.0 als bool (TRUE oder FALSE), oder NULL für nicht initialisierte Felder zurückgeliefert. Wurde vorher als int (1 oder 0> zurückgeliefert.

Hinweis:

Von dbase 7.0.0 an werden nullable Felder für DBASE_TYPE_FOXPRO Datenbanken unterstützt. Ist ein Feld nullable, wird die Übergabe von NULL das entsprechende Flag setzen, und beim späteren Abruf wird der Feldwert NULL sein.

Hinweis:

Indizes und Memo-Felder werden nicht unterstützt.

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top