不知道這是爲什麼發生的:基本上,我有一個包含以下數組的數組,見var_dump
:致命錯誤:無法取消設置字符串偏移量錯誤?
array(2) {
[0]=> array(1) {
[0]=> string(3) "ivr"
}
[1]=> array(1) {
[0]=> string(9) "ivr_dests"
}
}
顯然,這個數據是一種多餘的,但它同時使用XPath獲取值發生了什麼回來。所以我正在做一個foreach
循環遍歷第一個array()
並在第一個數組中分配它的嵌套數組值。
基本上,它應該返回此:
array(2) {
[0]=> string(3) "ivr"
[1]=> string(9) "ivr_dests"
}
所以這是我設置:
foreach($arr as $key => $arr2){
$arr2[$key] = $arr2[$key][0];
unset($arr2[$key][0]); //This returns Fatal error: Cannot unset string offsets
//if I comment out the unset(), $arr[$key] returns the same value as it did (multidim array)
};
//I tried this too:
$i=0;
foreach($arr as $arr2){
$arr2[$i] = $arr2[$i][0];
$i++;
}
任何想法我做錯了嗎?我是否應該用另一種方式去做?
感謝,
這是有道理的。我的一部分困惑是我之前沒有設置數組,但是我意識到現在我正在創建一個新數組並且取消舊數組的設置,而不是像這個示例一樣覆蓋這個數組。你的例子也幫助我理解'foreach()',謝謝! – Jared