diff options
Diffstat (limited to 'idiorm.php')
-rw-r--r-- | idiorm.php | 24 |
1 files changed, 5 insertions, 19 deletions
@@ -278,8 +278,10 @@ public static function set_db($db, $connection_name = self::DEFAULT_CONNECTION) { self::_setup_db_config($connection_name); self::$_db[$connection_name] = $db; - self::_setup_identifier_quote_character($connection_name); - self::_setup_limit_clause_style($connection_name); + if(!is_null(self::$_db[$connection_name])) { + self::_setup_identifier_quote_character($connection_name); + self::_setup_limit_clause_style($connection_name); + } } /** @@ -610,23 +612,7 @@ */ protected function _find_many() { $rows = $this->_run(); - return $this->_instances_with_id_as_key($rows); - } - - /** - * Create instances of each row in the result and map - * them to an associative array with the primary IDs as - * the array keys. - * @param array $rows - * @return array - */ - protected function _instances_with_id_as_key($rows) { - $instances = array(); - foreach($rows as $row) { - $row = $this->_create_instance_from_row($row); - $instances[$row->id()] = $row; - } - return $instances; + return array_map(array($this, '_create_instance_from_row'), $rows); } /** |