我的代碼中有些奇怪的東西,我真的不明白這一行爲。
我總是用數組像這樣的字符串變量鍵:PHP數組鍵中的雙引號內部變量
$string = "my key";
$array[$string] = "my value";
但在一種情況下,這是行不通的。我不得不把$string
放在雙引號中,否則我的數組仍然是空的。
我真的不明白爲什麼。此外,在我的代碼中,我使用相同的"$string"
作爲id來創建另一個數組,並且它沒有雙引號就可以正常工作。
這裏是我的代碼在需要雙引號(array[]
):
foreach($xml2->menu as $children) {
$id = $children['id'];
$this->array["$id"] = $children->label;//Problem here
}
在這裏,沒有雙引號的代碼($resultArray[]
):
for($i=0; $i < count($idArray); $i++){
$id = $idArray[$i];
$resultArray[$id] = $this->array[$id];//Problem here
}
是否有人有,爲什麼任何想法這是怎麼回事?
編輯:
的$idArray[$i]
和$children[$id]
內容是一些字符串像"about"
,"contact"
等
當我說「這是行不通的」,我的意思是創建陣列null
。
你可以寫什麼$ children ['id']和$ idArraypp [$ i]包含?當你說「它不工作」,你會得到錯誤/警告,或者它只是變量是__null__? – SERPRO