Bazy dBase
bool dbase_add_record(int identyfikator_bazy, array rekord)
- funkcja dodaje wiersz (rekord) przekazywany w postaci tablicy
rekord
do bazy danych dBase o identyfikatorze identyfikator_bazy; jeśli ilość
pól w bazie danych jest różna od ilości elementów w tablicy
rekord
operacja nie zostanie wykonana i zostanie zwrócona wartość
false
bool dbase_close(int identyfikator_bazy)
- funkcja zamyka bazę danych określoną poprzez identyfikator
identyfikator_bazy
int dbase_create(string nazwa_pliku, array pola)
- funkcja tworzy bazę danych dBase; tablica pola jest tablicą tablic, z
których każda opisuje format pojedynczego pola bazy i zawiera nazwę, typ
pola, długość oraz precyzję; typy pola mogą być następujące:
L - boolean
(nie posiada długości ani precyzji), M - memo (nie obsługiwane przez PHP,
nie posiada długości ani precyzji), D - data w formacie YYYYMMDD (nie
posiada długości ani precyzji), N - liczba (posiada długość oraz
precyzje), C - łańcuch; jeśli baza danych zostanie utoworzona pomyślnie
funkcja zwróci identyfikator, w przeciwnym wypadku zostanie zwrócona
wartość false
bool dbase_delete_record(int identyfikator_bazy, int rekord)
- funkcja oznacza wiersz (rekord) w bazie danych o identyfikatorze
identyfikator_bazy na pozycji rekord jako usunięty;
UWAGA: aby usunąć
rekordy oznaczone jako usunięte należy wywołać funkcję dbase_pack()
array dbase_get_record(int identyfikator_bazy, int rekord)
- funkcja zwraca rekord z pozycji rekord z bazy danych o identyfikatorze
identyfikator_bazy w postaci tablicy zawierającej dodatkowo pole
asocjacyjne nazwane deleted posiadające wartość
1 w przypadku rekordu
oznaczonego jako usunięty
array dbase_get_record_with_names(int identyfikator_bazy, int
rekord)
- funkcja zwraca rekord z pozycji rekord z bazy danych o identyfikatorze
identyfikator_bazy w postaci tablicy asocjacyjnej zawierającej dodatkowo
pole nazwane deleted posiadające wartość
1 w przypadku rekordu
oznaczonego jako usunięty
int dbase_numfields(int identyfikator_bazy)
- funkcja zwraca ilość pól (kolumn) znajdujących się w baze danych o
identyfikatorze identyfikator_bazy; numery pól są pomiędzy
0 a dbase_numfields($db)-1
int dbase_numrecords(int identyfikator_bazy)
- funkcja zwraca ilość wierszy (rekordów) znajdujących się w baze danych
o identyfikatorze identyfikator_bazy; numery wierszy są pomiędzy
1 a dbase_numrecords($db)
int dbase_open(string nazwa_pliku, int tryb)
- funkcja otwiera plik bazy danych dBase o nazwie
nazwa_pliku; tryb może przyjąc wartości:
0 - dla trybu tylko do odczytu,
1 - dla trybu tylko do
zapisu, 2 - dla trybu do odczytu i zapisu
bool dbase_pack(int identyfikator_bazy)
- funkcja "pakuje" bazę danych, czyli usuwa z niej wszystkie rekordy
oznaczone jako usunięte przy pomocy funkcji dbase_delete_record()
bool dbase_replace_record(int identyfikator_bazy, array rekord,
int numer_rekordu)
- funkcja zastępuje rekord o numerze numer_rekordu istniejący w bazie o
identyfikatorze identyfikator_bazy tablicą
rekord zawierającą dane;
jeśli ilość pól w bazie danych jest różna od ilości elementów w tablicy
rekord operacja nie zostanie wykonana i zostanie zwrócona wartość
false
1. Przykład utworzenia bazy dBase
/* ustalenie położenia i nazwy pliku bazy
danych */
$nazwa_db = "/tmp/moja_baza.dbf";
/* określenie struktury bazy danych */
$definicja =
array(
array("data",
"D"),
array("imie",
"C", 50),
array("wiek",
"N", 3, 0),
array("email", "C", 128),
array("czlonek", "L")
);
/* utworzenie bazy na podstawie powyżej
zdefiniowanych parametrów */
if (!dbase_create($nazwa_db, $definicja))
echo ("Wystąpił błąd!");
|
2. Przykład użycia dbase_numrecords
oraz dbase_numfields
/* pobranie
ilości rekordów z bazy o
identyfikatorze przechowywanym w zmiennej $db */
$ilosc_rekordow = dbase_numrecords($db);
/* pobranie ilości kolumn (pól) z bazy o
identyfikatorze przechowywanym w zmiennej $db */
$ilosc_wierszy = dbase_numfields($db);
/* pętla przemieszczająca się po
poszczególnych wierszach (rekordach) */
for ($num_rekordu = 1; $num_rekordu <= $ilosc_rekordow;
$num_rekordu++)
{
/* pobranie rekordu o numerze wskazanym
przez zmienną $num_rekordu */
$rekord = dbase_get_record($db, $num_rekordu);
/* pętla przemieszczająca się po
poszczególnych kolumnach (polach) bieżącego rekordu */
for ($i = 0; $i < $ilosc_wierszy; $i++)
{
/* wyświetlenie zawartości bieżącego pola
rekordu */
echo ($rekord[$i]);
>
}
echo ("\n");
}
|
Autor: Krzysztof Stelmach
Strona pochodzi z http://www.stelmach.info/