【发布时间】:2012-01-05 22:51:32
【问题描述】:
关于我之前问过的这个问题: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...
}
}
【问题讨论】:
-
您可以use references 用任意数量的键遍历数组。
标签: php arrays multidimensional-array