public function __get($name_) { if ('parent' === $name_) { $name = substr($this->m_name, 0, strrpos($this->m_name, '_')); if (!$name) { return null; } if (false === strpos($name, '_')) { return I18n_Country::valueOf($name); } return static::valueOf($name); } if (false === isset($this->m_children[$name_])) { if (array_key_exists($name_, $this->initialized()->m_data['children'])) { $this->m_children[$name_] = new self(strtolower($this->m_name . "_{$name_}"), $this->m_data['children'][$name_]); } } if (false === isset($this->m_children[$name_])) { return null; } return $this->m_children[$name_]; }
/** * @return \Components\I18n_Country */ public function country() { if (null === $this->m_country) { $this->m_country = I18n_Country::valueOf($this->countryName()); } return $this->m_country; }
/** * @GET */ public function country(I18n_Country $country_) { return $country_->title(); }