static function getInstance() { if (self::$instance === false) { switch (self::getType()) { case 'mysql': mysql_db::$host = self::$host; mysql_db::$user = self::$user; mysql_db::$pwd = self::$pwd; mysql_db::$dbname = self::$dbname; self::$instance = mysql_db::getInstance(); break; default: die('No database of type ' . self::getType() . ' found'); } } return self::$instance; }
public function __construct($strategy) { $dbm = array('mysql', 'mysqli', 'pgsql'); if (in_array($strategy, $dbm) === false) { throw new Exception('Invalid parameter for Data Base Strategy'); } try { switch ($strategy) { case 'mysql': $this->strategy = mysql_db::getInstance(); break; case 'mysqli': $this->strategy = mysqli_db::getInstance(); break; case 'pgsql': $this->strategy = pgsql_db::getInstance(); break; } } catch (Exception $e) { echo $e->getMessage(); } }