public function getChangedFields() { $changed = []; foreach ($this->modelsMetadata->getAttributes($this) as $field) { if (!isset($this->_snapshot[$field]) || $this->{$field} !== $this->_snapshot[$field]) { $changed[] = $field; } } return $changed; }