Forum und email

Paradox File Access



Această extensie este EXPERIMENTALĂ. Comportamentul acestei extensii -- inclusiv denumirile funcţiilor sale şi orice alte aspecte documentate în privinţa acestei extensii -- pot să fie modificate fără preaviz într-o versiune viitoare a PHP. Utilizaţi această extensie la propriul risc.

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.

Notă: 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 »


Informaţie despre instalarea acestei extensii PECL poate fi găsită în capitolul manualului, întitulat Instalarea extensiilor PECL. Informaţii adiţionale, cum ar fi lansări noi, descărcări, fişiere-sursă, informaţii despre persoana care întreţine extensia şi istoria schimbărilor poate fi localizată aici: »

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.

Configuraţia la rulare

Această extensie nu are directive de configurare definite în php.ini.

Object oriented API

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.

Methods of class paradox_db
Name of method Equivalent function
Constructor px_new()
Destructor px_delete()
open_fp() px_open_fp()
create_fp() px_create_fp()
close() px_close()
numrecords() px_numrecords()
numfields() px_numfields()
get_record() px_get_record()
put_record() px_put_record()
retrieve_record() px_retrieve_record()
delete_record() px_delete_record()
insert_record() px_insert_record()
update_record() px_update_record()
get_field() px_get_field()
get_schema() px_get_schema()
get_info() px_get_info()
set_parameter() px_set_parameter()
get_parameter() px_get_parameter()
set_value() px_set_value()
get_value() px_get_value()
get_info() px_get_info()
set_targetencoding() px_set_targetencoding()
set_tablename() px_set_tablename()
set_blob_file() px_set_blob_file()
date2string() px_date2string()
timestamp2string() px_timestamp2string()

Tipurile resurselor

px_new() creates a new Paradox object required by all Paradox functions.

Constante predefinite

Constantele de mai jos sunt definite de această extensie şi vor fi disponibile doar dacă această extensie a fost compilată în interiorul PHP, sau a fost încărcată dinamic în timpul rulării.

The following two tables lists all constants defined by the paradox extension.

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_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
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