PHP Doku:: Returns the database schema - function.px-get-schema.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzDatenbankerweiterungenAnbieterspezifische DatenbankerweiterungenParadox File AccessParadox Funktionenpx_get_schema

Ein Service von Reinhard Neidl - Webprogrammierung.

Paradox Funktionen

<<px_get_record

px_get_value>>

px_get_schema

(PECL paradox >= 1.0.0)

px_get_schemaReturns the database schema

Beschreibung

array px_get_schema ( resource $pxdoc [, int $mode = 0 ] )

px_get_schema() returns the database schema.

Parameter-Liste

pxdoc

Resource identifier of the paradox database as returned by px_new().

mode

If the optional mode is PX_KEYTOLOWER or PX_KEYTOUPPER the keys of the returned array will be converted to lower or upper case. If mode is 0 or not passed at all, then the key name will be identical to the field name.

Rückgabewerte

Returns the schema of a database file as an associated array. The key name is equal to the field name. Each array element is itself an associated array containing the two fields type and size. type is one of the constants in table Constants for field types. size is the number of bytes this field consumes in the record. The total of all field sizes is equal to the record size as it can be retrieved with px-get-info().


Ein BenutzerBeitrag:
- Beiträge aktualisieren...
Mr Muddy
14.08.2007 10:14
It's not especially pretty and there isn't any error trapping, so please don't use this on any sort of production data.  This will display the schema of a paradox data source.... 

<?
   
/*
    Paradox database schema display
    Tim Burt
    27/07/07
    */

    //we're expecting a filename in the post vars
   
if ($_POST['database_name'] != "") {
       
       
//Set up anything we are likely to need
       
$database_filename = "<path to your data file>".$_POST['database_name'];
       
        echo
"<p><b>Schema for ".$_POST['database_name']."</b></p>\n";
       
        if(!
$pxdoc = px_new()) {
      DIE(
"Problem !");
        }
       
$fp = fopen($database_filename, "r");
        if(!
px_open_fp($pxdoc, $fp)) {
         DIE(
"Couldn't open database file");
        }
        else {       
           
//output the database schema...
           
$stock_schema = px_get_schema($pxdoc);
           
            if (
is_array($stock_schema)) {
                foreach (
$stock_schema as $key=>$value) {
                    echo
"<br><b>".$key."</b> - Type ".$value['type'];
                    }
                }
            }
       
px_close($pxdoc);
       
px_delete($pxdoc);
       
fclose($fp);       
       
    }
    else {
       
//show the form to get the filename
       
echo "<form action=\"show_schema.php\" method=\"post\">\n";
        echo
"<p>Data Source Name (include extension) : <input type=\"text\" size=\"10\" name=\"database_name\"></p>\n";
        echo
"<p><input type=\"submit\" value=\"Show Schema !\">\n";
        echo
"</form>\n";
    }   

?>



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)