$getter_name(); } } /** * @param string $name * @param mixed $value */ public function __set($name, $value) { $setter_name = 'set' . $name; if(!method_exists($this, $setter_name)) { throw new \Exception('unknown property ' . $name); } else { $this->$setter_name($value); } } }