我試圖將元素添加到子陣列將它們在先前的迭代添加,即一個子陣列轉化這樣的:元素添加到子陣列遞歸
$a = array('a', 'b', 'c');
進入這個:
$new_array = array(
'a' => array(
'b' => array(
'c' => array()
)
)
);
我試圖將元素添加到子陣列將它們在先前的迭代添加,即一個子陣列轉化這樣的:元素添加到子陣列遞歸
$a = array('a', 'b', 'c');
進入這個:
$new_array = array(
'a' => array(
'b' => array(
'c' => array()
)
)
);
$a = array('a', 'b', 'c');
$tmp = array_reverse($a);
$new_array = array();
foreach ($tmp as $item) { $new_array = array($item => $new_array); }
function makeArrayChain($chain)
{
$key = array_shift($chain);
if ($key === NULL) {
return array();
} else {
return array($key => makeArrayChain($chain));
}
}
var_dump(makeArrayChain(array('a', 'b', 'c'));
array(1) {
["a"]=>
array(1) {
["b"]=>
array(1) {
["c"]=>
array(0) {
}
}
}
}
到@aibs解決方案類似。
<?php
function splitIntoSubArray($array) {
return $array ? array(array_shift($array) => splitIntoSubArray($array)) : array();
}
$a = array('a', 'b', 'c');
print_r(splitIntoSubArray($a));
輸出:目前做
Array
(
[a] => Array
(
[b] => Array
(
[c] => Array
(
)
)
)
)
簡單的方法。這對我有用,謝謝。 – 2010-11-30 11:16:58