0
我在這裏遇到一個難題(我不確定這是可能的)。特殊多維數組
我想調用類與__get
方法:
$P = ClassName();
$P->A = 0.1;
$P->A->B = 0.5;
這將返回此:
$P->A
應該返回0.1
(並執行__get
法)
$P->A->B
應該返回0.5
(並執行A上的__get
方法)
謝謝。
我在這裏遇到一個難題(我不確定這是可能的)。特殊多維數組
我想調用類與__get
方法:
$P = ClassName();
$P->A = 0.1;
$P->A->B = 0.5;
這將返回此:
$P->A
應該返回0.1
(並執行__get
法)
$P->A->B
應該返回0.5
(並執行A上的__get
方法)
謝謝。
要有
$P->A
回報1.5是沒有問題的。你可以用__get來完成,儘管你不需要。我不相信,但你可以做
$P->A->B
爲「A」將返回一個數字,不是一個對象,你就什麼都沒有與調用__get。然而這會工作:
$P->A->getValue()
$P->A->B
但有沒有辦法繞過它,使代碼工作原樣。
在HTTP的情況下有:'__toString()'返回值,而 - > A爲對象。但是你必須以非常敬業和嚴格的方式編寫程序的其餘部分。 – hakre
怎麼可能'$ P->了'有一個數值,並與自身參數的對象在同一時間?老實說,我不知道你到底在問什麼 – kero
這是不可能的。當你調用'$ P-> A-> B'時,get方法只給出屬性名稱'A',它不會得到'A-> B',所以它不能區分'$ P-> A'和'$ P-> A-> B'。 – Barmar
' - >'運算符只能用於一個對象。 '$ P-> a'將返回一個值類型,所以你不能得到這個結果並訪問屬性'B'。 –