2014-04-25 161 views
1
Class Config{ 
public $levels   = 10; 
public $points_difference = 100; 
public $diff_level  = 3; 
public $timer_seconds  = 60; 
public $maxBonus   = 0; 
public $maxScore   = 0; 
public $maxTotalScore  = 0; 
public $pointsLevel  = $this->points_difference * $this->diff_level; 
} 

我得到解析錯誤:語法錯誤,最後一行出現意外的T_VARIABLE錯誤。 有什麼想法?解析錯誤:語法錯誤,意外T_VARIABLE - 公共變量

+0

你應該在構造函數寫這個。 'public $ pointsLevel = $ this-> points_difference * $ this-> diff_level;' –

回答

1

在初始化過程中,您不能使用$this關鍵字。

如果需要,您需要使用構造函數。

Class Config{ 
    public $levels   = 10; 
    public $points_difference = 100; 
    public $diff_level  = 3; 
    public $timer_seconds  = 60; 
    public $maxBonus   = 0; 
    public $maxScore   = 0; 
    public $maxTotalScore  = 0; 

    public $pointsLevel; //no initialisation here 

    function __construct() { 
      $this->pointsLevel  = $this->points_difference * $this->diff_level; 
    } 
} 
0

不能使用物業的
$this從下述溶液中使用:

<?php 
class Config 
{ 

    public $levels   = 10; 
    public $points_difference = 100; 
    public $diff_level  = 3; 
    public $timer_seconds  = 60; 
    public $maxBonus   = 0; 
    public $maxScore   = 0; 
    public $maxTotalScore  = 0; 
    public $pointsLevel; 

    public function __construct() 
    { 
     $this->$pointsLevel = $this->points_difference * $this->diff_level; 
    } 
} 
相關問題