2011-04-21 70 views
0

我的印象是,下面的概念可以工作,但$ foo的新值不會在函數之間傳遞。什麼是正確的方法來做到這一點?php - 傳遞類之間函數變量的更新值

class doSomething 
{ 

    public $foo = "good"; 

    public function changeFooAgain() 
    { 
     $this->foo = "best"; 
    } 

    public function changeFoo() 
    { 
     $this->foo = "better"; 

    } 

    public function getFoo() 
    { 
     $this->changeFoo(); 
     $this->changeFooAgain(); 

     return $this->foo; 
    } 


} 

$foo = new doSomething; 

print $foo->getFoo(); 

回答

0

我的印象是下:

  • 你的代碼是正確的
  • 而且該foo屬性被從每個方法來訪問。


如果我執行代碼:

  • getFoo()方法執行
  • 反過來,執行
    • changeFoo()方法 - 現在foobetter
    • 和執行changeFooAgain()方法 - foo是現在best
  • getFoo()返回foo屬性的當前值
  • best(這是被分配到foo屬性的最後一個值)獲取顯示