It's from somewhere else, and I'm not going to write anything so boring.
<?php
Class DB_Text {
var $conn;
var $classname = "DB_Text";
var $database;
function On_create () {
}
Function connect ($database _name) {
$this->database = $database _name;
if (! file_exists ($database _name)) {
$this->conn = Array ();
$this->_close ();
}
$fp = fopen ($this->database, "R");
$this->conn = unserialize (Fread ($fp, FileSize ($this->database)));
Fclose ($FP);
}
function &query ($query) {
if (eregi ("select", $query)) return $this->_select ($query);
if (eregi ("Insert", $query)) return $this->_insert ($query);
if (eregi ("delete", $query)) return $this->_delete ($query);
if (eregi ("Update", $query)) return $this->_update ($query);
return Array ();
}
Function Fetch_row (& $result) {
if (list ($key, $value) = each ($result))
return $value;
return false;
}
function Num_rows ($result) {
return count ($result);
}
/**
* Auxiliary functions for Query
*/
function _select ($query) {
if (eregi (.)), $query, $regs)) {
$order = $regs [2];
$query = Eregi_replace ($regs [1], "", $query);
}
if (Eregi (group by (.)), $query, $regs)) {
$group = $regs [2];
$query = Eregi_replace ($regs [1], "", $query);
}
Eregi ("SELECT. *" ([0-9a-z_]) * (where (.))? ", $query, $regs);
if ($regs [3]!= "") {
$keys = $this->_where ($regs [3], "$this->conn[$regs [1]]");
while (the list ($key, $value) = each ($keys)) {
$rs [] = $this->conn[$regs [1]][$value];
}
}else {
$rs = $this->conn[$regs [1]];
}
if ($order) {
SSCANF ($order, "%s%s", $key, $type);
if (empty ($type)) $type = "ASC";
$this->_sort ($rs, $key, $type);
}
return $rs;