class Address{ protected $city; public function setCity($city){ $this->city = $city; } public function gerCity(){ return $this->city; } } class Person { protected $name; protected $address; public function __construct(){ $this->address = new Address; } public function setName($name){ $this->name = $name; } public function getName(){ return $this->name; } public function __call($method,$arguments){ if(method_exists($this->address,$method)){ return call_user_func_array(array($this->address,$method),$arguments); } } } $rasmus = new Person; $rasmus->setName('Rasmus Lerdof'); $rasmus->setCity('Sunnyvale'); print $rasmus->getName(). ' live in ' . $rasmus->getCity(); ?>
最后我输出得到的结果是: Rasmus Lerdof live in
而不是: Rasmus Lerdof live in Sunnyvale 这是为什么???
qq_青枣工作室_0
skyeorz