public function increment($key, $val = 1, $field = null, $tablePrefix = null)
{
list($tableName, $condition) = $this->parseKey($key, true);
if (is_null($field) || empty($tableName) || empty($condition)) {
$this->clearBindParams();
return false;
}
$val = abs(intval($val));
is_null($tablePrefix) && ($tablePrefix = $this->tablePrefix);
$tableName = $tablePrefix . $tableName;
$stmt = $this->prepare('UPDATE `' . $tableName . "` SET `{$field}` = `{$field}` + {$val} WHERE {$condition}");
$this->execute($stmt);
$this->setCacheVer($tableName);
return $stmt->rowCount();
}