public static function create($config) {
        $driver = val('driver', $config);
        if (!$driver) {
            throw new \Exception('You must specify a driver.', 500);
        }

        if (strpos($driver, '\\') === false) {
            $class = '\Garden\Db\\'.$driver;
        } else {
            // TODO: Check against a white list of db drivers.
            $class = $driver;
        }

        if (!class_exists($class)) {
            throw new \Exception("Class $class does not exist.", 500);
        }

        $db = new $class($config);
        return $db;
    }
public static function create($config) {
        $driver = val('driver', $config);
        if (!$driver) {
            throw new \Exception('You must specify a driver.', 500);
        }

        if (strpos($driver, '\\') === false) {
            $class = '\Garden\Db\\'.$driver;
        } else {
            // TODO: Check against a white list of db drivers.
            $class = $driver;
        }

        if (!class_exists($class)) {
            throw new \Exception("Class $class does not exist.", 500);
        }

        $db = new $class($config);
        return $db;
    }
public static function create ( $ config ) { $ driver = val ( 'driver' , $ config ) ; if ( ! $ driver ) { throw new \ Exception ( 'You must specify a driver.' , 500 ) ; } if ( strpos ( $ driver , '\\' ) === false ) { $ class = '\Garden\Db\\' . $ driver ; } else { // TODO: Check against a white list of db drivers. $ class = $ driver ; } if ( ! class_exists ( $ class ) ) { throw new \ Exception ( "Class $class does not exist." , 500 ) ; } $ db = new $ class ( $ config ) ; return $ db ; }
Create the appropriate db driver given a config.

@param array $config The configuration used to initialize the object.
The config must have a driver key which names the db class to create.
@throws \Exception Throws an exception when the config isn't complete.
Create the appropriate db driver given a config .