PHP Manual
Prev |  | Next

# CVIII. Paradox File Access

# Introduction

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 Paradox database and primary index files. It has initial support for creating Paradox databases. Consider it to be experimental due to lack of documentation of the Paradox file format.

> Note: This module has not been tested on other platforms than Debian/GNU Linux for PPC.

> Note: This module is also in development and may change, though I don't expect major changes to the API.

# Requirements

You need at least PHP 5.0.0 and libpx >= 0.1.9. The paradox library (libpx) is available at http://pxlib.sourceforge.net.

# Installation

A short installation note: just type

    $ pear install paradox

in your console.

# Runtime Configuration

This extension has no configuration directives defined in `php.ini`.

# Object oriented API

The paradox extension provides also an object oriented API. It consists of only one class called paradox_doc. 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_doc

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()
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()
timestamp2string() | px_timestamp2string()

# Predefined Constants

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
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 (not supported)
PX_FIELD_BLOB | Binary large object (not supported)
PX_FIELD_FMTMEMOBLOB | Binary large object (not supported)
PX_FIELD_OLE | OLE object (basically a blob, not supported)
PX_FIELD_GRAPHIC | Graphic (basically a blob, not supported)
PX_FIELD_TIME | time
PX_FIELD_TIMESTAMP | timestamp (like the unix timestamp)
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 |
PX_KEYTOUPPER |

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 (not supported)
PX_FILE_SEC_INDEX | Secondary index (not supported)
PX_FILE_INC_SEC_INDEX | Incremental secondary index (not supported)
PX_FILE_NON_INC_SEC_INDEX_G | (not supported)
PX_FILE_SEC_INDEX_G | (not supported)
PX_FILE_INC_SEC_INDEX_G | (not supported)

Prev | Home | Next
ovrimos_rollback | Up | px_close