2013-02-01 27 views
0

我現在有一個叫做連接使用下面的代碼類調用類:從另一個類OOP

class Connect 
{ 
public $sqlHost='host'; 
public $sqlUser='user'; 
public $sqlPass='pass'; 
public $sqlDB='db'; 

public $db; 
    public function __construct() { 
     $this->db = new mysqli($this->sqlHost, $this->sqlUser, $this->sqlPass, $this>sqlDB); 
    } 
} 
?> 

我也有一個叫Todo類,我想知道,我怎麼可能去調用$分貝位於在TODO類的Connect類中?

回答

1

想象你有兩個對象稱爲

$connect = new Connect(); 
$todo = new TODO(); 

現在1 3的事情都可能發生,你可以通過$連接對象到$待辦事項一個連接對象,或者如果一個方法是TODO的成員對象,或創建一個新的連接對象。

場景1:

class TODO { 
    public function foo($connect){ 
     // You can get the db object here: 
     $connect->db 
    } 
} 

$todo->foo($connect) 

場景2:

class TODO { 
    public $connect; 
    public function __construct(){ 
     $this->connect=new Connect(); 
    } 
    public function foo(){ 
     //get db: 
     $this->connect->db; 
    } 
} 
$todo->foo(); 

場景3:

class TODO { 
    public function foo(){ 
     $connect = new Connect(); 
     $connect->db; 
    } 
} 
0

我不知道你想要什麼,但我認爲它這個

$connectInstance = new Connect();
$connectInstance->db...

這樣你可以在一個連接對象訪問數據庫變量。但首先,你必須實現對象的實例化。