php使用键值创建多维数组

时间:2014-07-15 14:11:49

标签: php arrays function

我试图显示一个php函数来创建一个带键值的多维数组,链接这段代码。

 $new_data = array();
        $count = count($params);
        if($count == 1){
            $new_data[$params[0]] = $content; 
        }
        if($count == 2){
            $new_data[$params[0]][$params[1]] = $content; 
        }
        if($count == 3){
            $new_data[$params[0]][$params[1]][$params[2]] = $content; 
        }
        if($count == 4){
            $new_data[$params[0]][$params[1]][$params[2]][$params[3]] = $content; 
        }
        if($count == 5){
            $new_data[$params[0]][$params[1]][$params[2]][$params[3]][$params[4]] = $content; 
        }

1 个答案:

答案 0 :(得分:0)

措辞奇怪,但仍然是一个有效的问题(在我看来),所以我真的没有得到这个问题。无论如何,这是一个可能的解决方案:

function foo($content, $keys) {
  return sizeof($keys) === 0 ? $content : foo([array_pop($keys) => $content], $keys);
}

print_r(foo('bar', ['a', 'b', 'c', 'd', 'e']));

演示:http://3v4l.org/2tcJ5