我的代码中有些奇怪的东西,我真的不明白这一行为。
我总是用数组像这样的字符串变量键: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