php - 怎么由一维数组生成多维数组
本文介绍了php - 怎么由一维数组生成多维数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
一直不太明白,怎么能快捷的由一维数组生成多维数组:
我有一个字段是字符串,值可能是1或1-2或1-2-3-4-5...
例如如果是1-2-3-4,怎么能生成为多维数组:
Array
(
[1] => Array
(
[2] => Array
(
[3] => Array
(
[4] => Array
(
)
)
)
)
)
多谢
解决方案
// from https://segmentfault.com/q/1010000004647414
$str = '1-2-3-4';
$arr = explode('-', $str);
$last = null;
while($last = array_pop($arr)) {
if(null != $last) {
array_push($arr,[array_pop($arr)=>$last]);
}
if(count($arr) <= 1) {
break;
}
}
print_r($arr[0]);
/*Array
(
[] => Array
(
[1] => Array
(
[2] => Array
(
[3] => 4
)
)
)
)*/
这篇关于php - 怎么由一维数组生成多维数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文