2010-11-30 88 views
2
$this->admin_model->list_user() 

我寫的大部分時間我的程序在面向對象的PHP。但我這樣寫...如何製作這樣的PHP代碼?

$this->hello_world(). 

上面的代碼是CodeIgniter,我認爲CakePHP也遵循相同的編碼風格。

請給我簡單的例子,如何讓我的「程序hello_world」像

$this->something->hello_world(). 

感謝你提前。

蘇里亞

+0

@orokusaki並不複雜或簡單的只是我想知道它是如何工作? – Surya 2010-11-30 06:15:46

+2

@orok將對象作爲屬性的對象會令人困惑?補充一下,爲什麼我之前沒有注意到這一點?現在我們都必須因爲你而放棄OOP! (看看這個評論裏有一個interrobang。) – deceze 2010-11-30 06:40:07

回答

3

something只是其具有hello_world()方法的類型的對象。

所以:

class Something 
{ 
    public function hello_world() 
    { 
     echo 'Hello, big world!'; 
     // Do work. 
    } 
} 

class Program 
{ 
    private $something; 

    public function Run() 
    { 
     $this->something = new Something(); 
     $this->something->hello_world() 
    } 
} 

$program = new Program(); 
$program->Run(); 
4

它沒有什麼特別的; $ this-> admin_model是一個包含對象的屬性,出於所有目的與$ object-> method();相同。

一步一步的將是這樣的:

$this->property = new MyObjectWIthADoItMethod(); 
$this->property->DoIt();