fieldName = $fieldName; $this->fieldValue = is_array($fieldValue) ? array_unique($fieldValue) : $fieldValue; } public function run(array $params = array(), array $options = array()) { $conditionString = ''; if (null !== $this->fieldName) { if (is_array($this->fieldValue)) { $params = array(); for ($i = 1; $i <= count($this->fieldValue); $i++) { $params[':' . $this->fieldName . '_queasydb_' . $i] = $this->fieldValue[$i - 1]; } $conditionString = sprintf( 'WHERE %s IN (%s)', $this->fieldName, implode(', ', array_keys($params)) ); } else { $conditionString = sprintf( 'WHERE `%s` = :%1$s', $this->fieldName ); $params = array(':' . $this->fieldName => $this->fieldValue); } } $sql = sprintf(' DELETE FROM `%s` %s', $this->tableName(), $conditionString ); $this->setSql($sql); return parent::run($params, $options); } }