$a = array('dir1', 'dir2', 'dir3', 'file1'); $b = array('dir1', 'dir2', 'dir3', 'file2'); //上面的数组怎么变成下面这种 /* array( 'dir1'=>array( 'dir2'=>array( 'dir3'=>array('file1', 'file2',) ) ) ); */
求个算法,谢谢!
亲~好吧,我自己弄出来了。
$a = array('dir1', 'dir2', 'dir3', 'file1'); function build($tree, $arr) { if(count($arr) == 1) { return $arr; } $key = array_shift($arr); $tree[$key] = build($tree, $arr); return $tree; } $tree = array(); print_r(build($tree, $a));
欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。 温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。