0
假設我有以下(PHP僅供參考)作爲實例屬性的實例是否可以訪問主實例的其他屬性?
myClassA{
private $myClassB;
private $myClassC;
function __construct(){
$this->myClassB = new myClassB();
$this->myClassC = new myClassC();
}
}
而且我們說myClassB
是一個數據庫連接管理器,將建立和密切的聯繫,但從來不寫或從連接讀取。
我現在想用myClassC
寫一個通過myClassB
管理的數據庫連接。假設myClassC
具有一個名爲save_user()
的功能,用於保存用戶數據。
save_user
是否可能包含引用內myClassA
的實例的代碼。例如,如果我知道myClassC
僅會一myClassA
內部創建和myClassA
總會有myClassB
管理其連接,那麼有可能是myClassC
包含一行代碼如
//$this refers to myClassC
$connection_to_write_to = $this->OBJECT_IM_INSIDE_OF->myClassB->db_connection_1->;
我猜我想知道,如果裏面myClassC
功能將能夠直接訪問的myClassA
屬性或我必須做
myClassC->myFunction(myClassA->property_I_want)
訪問,我想在使用的myClassA
屬性0。
沒有,有沒有自動反向引用。如果你想這樣做,你需要在'ClassC'中添加一個屬性來保存這個屬性,並將'this-> myClassB'作爲參數傳遞給'ClassC'構造函數。 – Barmar