<?php set_time_limit(-1); $mysql = new MySqlDb(); $sqlite = new SqLiteDb(); $mysql->CopyDataTo($sqlite); echo $mysql->GetError(); echo $sqlite->GetError(); $mysql->Close(); $sqlite->Close(); ////////////////// Start Class Implementations /////////////////////// abstract class Db { var $db_res; abstract function Query($query); abstract function FetchObject($result); abstract function FetchArray($result); abstract function FetchAssocArray($result); abstract function FreeResult($result); abstract function GetError(); abstract function GetTables(); abstract function GetFields($table_name); abstract function EscapeString($string); abstract function Close(); function GetResults($dbres, $use_fetch_method) { $results = array(); $reflection = new ReflectionClass($this); $ref_method = $reflection->getMethod($use_fetch_method); $temp_res; while ($temp_res = $ref_method->invoke($this, $dbres)) {