/** * @param mixed $offset * @param mixed $value */ public function offsetSet($offset, $value) { if (!$this->offsetExists($offset) or $this->offsetGet($offset) !== $value) { $this->modified[] = $offset; parent::offsetSet($offset, $value); } }