2012-07-18 65 views
1

測試有些晚靜態綁定,並獲得第5行此錯誤:PHP後期靜態綁定 - 解析錯誤:語法錯誤,意想不到的T_STRING,期待T_VARIABLE

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(); 

可以說我很難過。

回答

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

這不是一個恆定的 - 所以應該由$標誌

+0

嘿前面,總是可以俯瞰簡單的事情。 – 2012-07-18 20:40:09

+0

@Ryan_K考慮點擊答案旁邊的綠色勾號以接受它,如果它有幫助。 – Mahn 2012-07-18 20:46:18

+0

是的,在選擇答案之前必須等待。 (這是一個很好的實現) – 2012-07-18 20:59:46

相關問題