public function __get($key) { if (!$this->isRetrieved()) { $this->retrieve(); } return parent::__get($key); }