public function offsetUnset($key) { if (isset($this[$key])) { $this->__removed[$key] = $this[$key]; } return parent::offsetUnset($key); }