这确实有效:
$test = new Test();
$test->blah();
class Test // extends DateInterval
{
private $foo = 0;
public function __construct() {}
public function blah()
{
echo $this->foo;
echo $this->bar;
}
public function __get($n) { echo $n; }
}
正如预期的那样,输出是0bar
。
但是,一旦我取消注释extends DateInterval
部分,我就会收到错误:
致命错误:测试:: blah():未知属性(foo)
在Linux上使用PHP 5.3.2会发生这种情况,在Windows上使用PHP 5.3.8不会发生这种情况。