Warning |
This extension is
EXPERIMENTAL. The behaviour of this extension --
including the names of its functions and anything else documented
about this extension -- may change without notice in a future release of PHP.
Use this extension at your own risk. |
This module allows to read and write Paradox databases, primary index
files and blob files. Write support has been proven to be quite reliable,
though due to lack of documentation the produced files may not in
any case be readable by other applications. Encrypted databases can
be read without specifying a password if pxlib >= 0.5.0 is used.
Note:
This module is also in development and may change, though I don't expect
major changes to the API.
You need at least PHP 5.0.0 and pxlib >= 0.4.4 for the basic set
of functions. Some newer functions are only available with pxlib >=
0.6.0. Reading and writing of encrypted databases requires at least
pxlib >= 0.5.0. The paradox library (pxlib) is available at
http://pxlib.sourceforge.net.
A short installation note: just type
in your console. Make sure you have pxlib installed before. If you install
pxlib from an rpm or debian package, do not forget to install the development
package as well.
This extension has no configuration directives defined in php.ini.
The paradox extension provides also an object oriented API. It consists of
only one class called paradox_db. Its methods only differ from the
functions in its name and of course the missing first parameter. The
following table will list all methods and its equivalent functions.
Table 1. Methods of class paradox_db
The constants below are defined by this extension, and
will only be available when the extension has either
been compiled into PHP or dynamically loaded at runtime.
The following two tables lists all constants defined by the paradox
extension.
Table 2. Contants for field types
Name | Meaning |
---|
PX_FIELD_ALPHA | Character data with fixed length |
PX_FIELD_DATE | Date, number of days since 1.1.0000 |
PX_FIELD_SHORT | Short integer (2 Bytes) |
PX_FIELD_LONG | Long integer (4 Bytes) |
PX_FIELD_CURRENCY | same as PX_FIELD_NUMBER |
PX_FIELD_NUMBER | Double |
PX_FIELD_LOGICAL | Boolean |
PX_FIELD_MEMOBLOB | Binary large object |
PX_FIELD_BLOB | Binary large object (not supported) |
PX_FIELD_FMTMEMOBLOB | Binary large object |
PX_FIELD_OLE | OLE object (basically a blob, not supported) |
PX_FIELD_GRAPHIC | Graphic (basically a blob, not supported) |
PX_FIELD_TIME | time, number of milli seconds since midnight |
PX_FIELD_TIMESTAMP | timestamp, number of milli seconds since 1.1.0000 |
PX_FIELD_AUTOINC | Auto incrementing interger (like PX_FIELD_LONG) |
PX_FIELD_BCD | Decimal number stored in bcd format (not supported) |
PX_FIELD_BYTES | Array of Bytes with not more than 255 bytes (not supported) |
PX_KEYTOLOWER | Turn all field names into lower case |
PX_KEYTOUPPER | Turn all field names into upper case |
Table 3. Contants for file types
Name | Meaning |
---|
PX_FILE_INDEX_DB | Indexed database |
PX_FILE_PRIM_INDEX | Primary index |
PX_FILE_NON_INDEX_DB | None indexed database |
PX_FILE_NON_INC_SEC_INDEX | None incremental secondary index |
PX_FILE_SEC_INDEX | Secondary index |
PX_FILE_INC_SEC_INDEX | Incremental secondary index |
PX_FILE_NON_INC_SEC_INDEX_G | Non incremental secondary index |
PX_FILE_SEC_INDEX_G | Secondary index |
PX_FILE_INC_SEC_INDEX_G | Non incremental secondary index |