test_api.php
4.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?php
/**
* ----------------------------------------------------------------
* XBase
* test_api.php
*
* Developer : Erwin Kooi
* released at : Jan 2005
* last modified by : Erwin Kooi
* date modified : Jan 2005
*
* Info? Mail to info@cyane.nl
*
* --------------------------------------------------------------
*
* R/W with api demonstration / compare with PHP integrated dbase functions
*
**/
$locaplic = "c:/ms4w/apache/htdocs/i3geo";
require_once "api_conversion.php";
$fields = array(
array("bool" , DBFFIELD_TYPE_LOGICAL),
array("memo" , DBFFIELD_TYPE_MEMO),
array("date" , DBFFIELD_TYPE_DATE),
array("number" , DBFFIELD_TYPE_NUMERIC, 3, 0),
array("string" , DBFFIELD_TYPE_CHAR, 50),
);
$di = dbase_create("test/dbase.dbf",$fields);
$xi = xbase_create("test/xbase.dbf",$fields);
dbase_add_record($di,array("T","abc","20060120",123,"string one"));
dbase_add_record($di,array("F","def","20060121",321,"string two"));
dbase_add_record($di,array("F","ghi","20060121",111,"string trio"));
xbase_add_record($xi,array("T","abc","20060120",123,"string one"));
xbase_add_record($xi,array("F","def","20060121",321,"string two"));
xbase_add_record($xi,array("F","ghi","20060121",111,"string trio"));
dbase_close($di);
xbase_close($xi);
$di = dbase_open("test/dbase.dbf",2);
$xi = xbase_open("test/xbase.dbf",2);
dbase_delete_record($di,2);
xbase_delete_record($xi,2);
dbase_pack($di);
xbase_pack($xi);
dbase_close($di);
xbase_close($xi);
$di = dbase_open("test/dbase.dbf",2);
$xi = xbase_open("test/xbase.dbf",2);
echo "dbase<br>";
echo "index = $di <br>";
echo "<br>";
echo "xbase<br>";
echo "index = $xi <br>";
echo "header info: "; print_r(xbase_get_header_info($xi));
dbase_close($di);
xbase_close($xi);
echo "<br><br>";
$di = dbase_open("test/xbase.dbf",0);
$xi = xbase_open("test/dbase.dbf",0);
echo "dbase<br>";
echo "index = $di <br>";
echo "column count = ".dbase_numfields($di)." <br>";
echo "record count = ".dbase_numrecords($di)." <br>";
echo "<table>";
for ($i=0;$i<dbase_numrecords($di);$i++) { echo "<tr>"; $r = dbase_get_record_with_names($di,$i+1); foreach ($r as $c=>$v) { echo "<td> $c=$v </td>"; } echo "</tr>"; }
echo "</table>";
echo "<br>";
echo "xbase<br>";
echo "index = $xi <br>";
echo "column count = ".xbase_numfields($xi)." <br>";
echo "record count = ".xbase_numrecords($xi)." <br>";
echo "<table>";
for ($i=0;$i<xbase_numrecords($xi);$i++) { echo "<tr>"; $r = xbase_get_record_with_names($xi,$i+1); foreach ($r as $c=>$v) { echo "<td> $c=$v </td>"; } echo "</tr>"; }
echo "</table>";
dbase_close($di);
xbase_close($xi);
echo "<br><br>";
$table =& new XBaseTable("test/dbase.dbf");
$table->open();
echo "name: ".$table->name."<br />";
echo "version: ".$table->version."<br />";
echo "foxpro: ".($table->foxpro?"yes":"no")."<br />";
echo "modifyDate: ".date("r",$table->modifyDate)."<br />";
echo "recordCount: ".$table->recordCount."<br />";
echo "headerLength: ".$table->headerLength."<br />";
echo "recordByteLength: ".$table->recordByteLength."<br />";
echo "inTransaction: ".($table->inTransaction?"yes":"no")."<br />";
echo "encrypted: ".($table->encrypted?"yes":"no")."<br />";
echo "mdxFlag: ".ord($table->mdxFlag)."<br />";
echo "languageCode: ".ord($table->languageCode)."<br />";
echo $table->toHTML();
$table->close();
echo "<br>";
$table =& new XBaseTable("test/xbase.dbf");
$table->open();
echo "name: ".$table->name."<br />";
echo "version: ".$table->version."<br />";
echo "foxpro: ".($table->foxpro?"yes":"no")."<br />";
echo "modifyDate: ".date("r",$table->modifyDate)."<br />";
echo "recordCount: ".$table->recordCount."<br />";
echo "headerLength: ".$table->headerLength."<br />";
echo "recordByteLength: ".$table->recordByteLength."<br />";
echo "inTransaction: ".($table->inTransaction?"yes":"no")."<br />";
echo "encrypted: ".($table->encrypted?"yes":"no")."<br />";
echo "mdxFlag: ".ord($table->mdxFlag)."<br />";
echo "languageCode: ".ord($table->languageCode)."<br />";
echo $table->toHTML();
$table->close();
?>