關於數組這個問題我剛纔問的多維數組設定值:Searching multi-dimensional array's keys using a another array使用按鍵
我想辦法設置在多維數組的值(最多6級深),使用包含要使用的密鑰的單獨數組。
例如
$keys = Array ('A', 'A2', 'A22', 'A221');
$cats[A][A2][A22][A221] = $val;
我試着寫了一個笨拙的開關,有點成功......有沒有更好的解決方案?
function set_catid(&$cats, $keys, $val) {
switch (count($keys)) {
case 1: $cats[$keys[0]]=$val; break;
case 2: $cats[$keys[0]][$keys[1]]=$val; break;
case 3: $cats[$keys[0]][$keys[1]][$keys[2]]=$val; break;
etc...
}
}
你可以[使用引用(http://stackoverflow.com/questions/6088115/transform-flat-array-into-a-hierarchical-multi-dimensional -array/6088147#6088147)以任意數量的鍵遍歷數組。 – mario