php数组从数组构建多维数组
我有一个php数组从数组构建多维数组,php,arrays,Php,Arrays,我有一个 array('frank','john','dan') 我需要从中建立一个 array('frank'=>array('john'=>array('dan'=>array()) 它必须是动态的,因为我并不总是知道初始数组中有多少个键 我试过一些东西,但不得不承认我被难倒了 问题似乎是,我无法为数组分配可变数量的维度,每当我为largearray变量分配数组键时,它都必须分配给变量的根 $keys = array('base','frank','john'); f
array('frank','john','dan')
我需要从中建立一个
array('frank'=>array('john'=>array('dan'=>array())
它必须是动态的,因为我并不总是知道初始数组中有多少个键
我试过一些东西,但不得不承认我被难倒了
问题似乎是,我无法为数组分配可变数量的维度,每当我为largearray变量分配数组键时,它都必须分配给变量的根
$keys = array('base','frank','john');
foreach ($keys as $k => $key) {
if ($k>0) {
$largearray[$keys[$k-1]] = array($key=>array());
}elseif ($k>1) {
$largearray = array_push($largearray[$keys[$k-2]], array($keys[$k-1]=>array($key=>array())));
}
}
我希望这就是你想要的
$arr = array('frank','john','dan');
$finalArr = array();
for ($x=count($arr) - 1; $x >= 0; $x--) {
$arrElement = $arr[$x];
$finalArr = array($arrElement => $finalArr);
}
var_dump($finalArr);
这将导致
array (size=1)
'frank' =>
array (size=1)
'john' =>
array (size=1)
'dan' =>
array (size=0)
...