我有本書提供的這個例子: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函數?