/** * Initialize B2DB and load related B2DB classes * * @param array $configuration [optional] Configuration to load * @param boolean $load_parameters [optional] whether to load connection parameters */ public static function initialize($configuration = array(), $cache_object = null) { try { if (array_key_exists('dsn', $configuration) && $configuration['dsn']) { self::setDSN($configuration['dsn']); } if (array_key_exists('driver', $configuration) && $configuration['driver']) { self::setDBtype($configuration['driver']); } if (array_key_exists('hostname', $configuration) && $configuration['hostname']) { self::setHost($configuration['hostname']); } if (array_key_exists('port', $configuration) && $configuration['port']) { self::setPort($configuration['port']); } if (array_key_exists('username', $configuration) && $configuration['username']) { self::setUname($configuration['username']); } if (array_key_exists('password', $configuration) && $configuration['password']) { self::setPasswd($configuration['password']); } if (array_key_exists('database', $configuration) && $configuration['database']) { self::setDBname($configuration['database']); } if (array_key_exists('tableprefix', $configuration) && $configuration['tableprefix']) { self::setTablePrefix($configuration['tableprefix']); } if (array_key_exists('debug', $configuration)) { self::setDebugMode((bool) $configuration['debug']); } self::$_cache_object = $cache_object; } catch (\Exception $e) { throw $e; } }