有一个数组A,它具有可变数量的值。 我想将数组A的值转换为数组B的索引。
语言:PHP
示例:
//array A
$a={'a','b','c','d'};
//converted to an index of array B
$b['a']['b']['c']['d']='somevalue';
问题是数组A的值的数量是灵活的。
有出路吗?感谢。
答案 0 :(得分:1)
$a=['a','b','c','d'];
$b = [];
$c = &$b;
foreach($a as $key) {
$c[$key] = $c;
$c = &$c[$key];
}
$c = 'somevalue';
unset($c);
var_dump($b);
答案 1 :(得分:0)
感谢@Mark Baker。我修改了一些代码并且有效。
$a = array('a', 'b', 'c', 'd');
$b = array();
rsort($a);
$i = 0;
foreach ($a as $v)
{
if ($i++ > 0)
{
$c = array();
$c[$v] = $b;
$b = $c;
}
else
{
$b[$v] = 111;
}
}
var_dump($b);
结果,我想要的是什么:
array(1) {
["a"]=>
array(1) {
["b"]=>
array(1) {
["c"]=>
array(1) {
["d"]=>
int(111)
}
}
}
}