Rya*_*n_K 1 php static late-binding
测试一些后期静态绑定并在第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();
Run Code Online (Sandbox Code Playgroud)
可以说我很难过.
protected static $test = 'A TEST';
^--- !!!
Run Code Online (Sandbox Code Playgroud)
这不是常数 - 所以它应该以$符号开头