/** * Load results as CSV-like file on database server. * @param string $path * @param string $fieldsTerminator * @param string $fieldsEncloser * @param string $linesTerminator */ public function loadFile($path, $fieldsTerminator = ',', $fieldsEncloser = '"', $linesTerminator = "\n") { debug_enforce_string($path); debug_enforce_string($fieldsTerminator); debug_enforce_string($fieldsEncloser); debug_enforce_string($linesTerminator); $sql = $this->getSql(); $db = $this->getDb(); $path = $db->quote($path, 'string'); $linesTerminator = $db->quote($linesTerminator, 'string'); $fieldsEncloser = $db->quote($fieldsEncloser, 'string'); $fieldsTerminator = $db->quote($fieldsTerminator, 'string'); $db->exec($sql . "\n" . "INTO OUTFILE {$path}" . " FIELDS TERMINATED BY {$fieldsTerminator}" . " ENCLOSED BY {$fieldsEncloser}" . " LINES TERMINATED BY {$linesTerminator}"); }
/** * @param string $str * @return int */ function str_to_uint($str) { debug_enforce_string($str); debug_enforce(0 !== strlen($str), "Cannot convert empty string to uint"); $ret = (int) $str; debug_enforce_gte($ret, 0); return $ret; }