我有本书提供的这个例子:PHP的聚集对象,需要解释
class Address {
protected $city;
public function setCity($city) {
$this -> city = $city;
}
public function getCity() {
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 Lerdorf');
$rasmus->setCity('Sunnyvale');
print $rasmus->getName().' lives in '.$rasmus->getCity().'.';
不过,我有问题的理解这段代码。
他如何使用__construct来聚集对象,为什么他需要__call函数?