扩展DateInterval时出现“未知属性”

时间:2012-02-22 10:40:08

标签: php oop

这确实有效:

$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不会发生这种情况。

1 个答案:

答案 0 :(得分:0)

显然,这是根据thisthis页面在5.3.6版本中修复的错误。

Fixed bug #52738 (Can't use new properties in class extended from DateInterval). (Stas)

似乎你唯一的选择是切换到另一个PHP版本。