/** * @param string * @param string * @param array * @param string */ public function insertInto($tableName, $keys, $params, $sqlLog = '', $returning = '') { if (empty($sqlLog)) { $sqlLog = __METHOD__ . ".{$tableName}.{$keys}"; } $sql = "INSERT INTO {$tableName} ({$keys}) VALUES ("; $nKeys = substr_count($keys, ',') + 1; for ($i = 1; $i < $nKeys; $i++) { $sql .= '$' . $i . ','; } $sql .= '$' . $nKeys . ')'; for ($i = 0; $i < $nKeys; $i++) { if (is_bool($params[$i])) { $params[$i] = $this->dbDriver->booleanToDb($params[$i]); } } if (!empty($returning)) { return $this->dbDriver->insertPreparedAndReturn($sqlLog, $sql, $params, $returning); } $this->prepare($sqlLog, $sql); $res = $this->execute($sqlLog, $params); $this->freeResult($res); }