conn = ibase_connect($db, $user, $pass); } /** * Close the link to the database */ function __destruct() { ibase_close($this->conn); } /** * Empty a database table * * @param string $table */ function truncate($table) { // Firebird lacka a truncate command $sql = "DELETE FROM {$table}"; $this->query($sql); } /** * Wrapper function to better match PDO * * @param string $sql * @return resource */ function query($sql) { $this->statement = ibase_query($this->conn, $sql); return $this->statement; } /** * Emulate PDO fetch function * * @return mixed */ function fetch() { //TODO implement } /** * Emulate PDO fetchAll function * * @return mixed */ function fetchAll() { //TODO implement } /** * List tables for the current database * * @return mixed */ function get_tables() { $sql="SELECT rdb\$relation_name FROM rdb\$relations WHERE rdb\$relation_name NOT LIKE 'RDB\$%'"; $res = $this->query($sql); } } class firebird_manip extends firebird { function __construct($db, $user="sysdba", $pass="masterkey") { parent::__construct($db, $user, $pass); } } // End of firebird.php