PHP后期静态绑定--分析错误:语法错误,意外的T_STRING,应为T_VARIABLE


PHP Late Static Binding -- Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE

测试一些后期静态绑定并在第5行得到此错误:

Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE

第5行:

protected static test = 'A TEST';

以下是来源:

class A {
    protected static test = 'A TEST';
    public static function test() {
        echo $this->test;
    }
}
Class B extends A {
    public static test = "B TEST";
    public function static_test() {
        echo static::$test;
    }
}
$a = new A;
$b = new B;
echo '$a->test()<br />';
echo $a->test();
echo '<br /> <br />';
echo '$b->test()<br />';
echo $b->test();
echo '<br /> <br />';
echo '$b->static_test()<br />';
echo $b->static_test();

可以肯定地说,我被难住了。

protected static $test = 'A TEST';
                 ^--- !!!

它不是常数,所以它前面应该有$符号