我想從對象中的多維數組訪問元素。例如,我們假設有一個Foo類有一個名爲$ phone的變量,代表多維數組。訪問使用未知鍵的嵌套關聯數組
$phone -> structure will look like
Array {
"home" Array(1) {[0] = "555-1212"},
"work" Array(2) {[0] = "555-1234", [1] = "555=5434"},
"other" Array(1) {[0] = "555=9090"}
}
注意:我們不能假設我們知道密鑰。
我可以給明確的鍵,即進入一個值,
$foo->phone["home"][0]
的問題出現時,我並沒有明確知道密鑰和從其他地方拉他們。 例如,如果$類型=「手機」,$亞型=「家」,我想第一個條目我就想到用:
$object->$type[$subtype][0]
獲得的價值,但我得到一個錯誤,它不不認爲這是一個數組。我不確定錯誤在哪裏。
接下來就是將元素添加到最低級別的數組中。我想下面的工作,但不會:
array_push($object->$type[$subtype], $value)
這mutidimensional陣列,讓我來存儲密鑰在一個嵌套結構標記的電話號碼。如果這太複雜了,請告訴我。我選擇這種結構的原因是因爲這些鍵可以是用戶定製的任何東西。
謝謝。
當你說; '鑰匙可以是用戶定製的任何東西',你是說他們用來提交這些信息的形式允許他們設置鑰匙嗎? –
是的。會有一些其他方法允許用戶創建密鑰。例如「家庭傳真」,然後爲其添加一個或多個數字。它意味着像Apple的地址簿一樣工作。我可以爲電話號碼添加自定義字段並通過自己的密鑰進行定義。 – user1034603