/** * @param string $name * @param mixed $value */ public function __set($name, $value) { if (!array_key_exists($name, $this->data) || $this->data[$name] !== $value) { $this->changedFields[$name] = $value; } parent::__set($name, $value); }