2013-03-13 147 views
1

我可以編寫兩種不同方式完成同樣事情的類;在對象方法中返回值或在對象方法中設置值? PHP

class Simple { 

    private $var; 

    public function __construct() { 

     $this->var = $this->setVar(); 
    } 

    private function setVar() { 

     return true; 
    } 
} 

或者

class Simple { 

    private $var; 

    public function __construct() { 

     $this->setVar(); 
    } 

    private function setVar() { 

     $this->var = true; 
    } 
} 

我當會用一個比其他?我看到許多不同的php應用程序使用這兩種不同的類型。但似乎沒有一般的指導方針可以遵循,或者它對這個事實甚至是重要的?

回答

2

安裝者應該集合而不是返回。這應該不需要更多的解釋。

3

這些都不像我正確的屬性設置者。屬性設置者應該參數,並將該參數值分配給屬性:

class Simple { 
    private $var; 
    public function setVar($val) { 
     $this->var = $val; 
    } 

    public function getVar() { 
     return $this->var; 
    } 
}