这样的数组怎么让它树状显示呢?
Array树状 无限分类
(
[1] => Array
(
[id] => 1
[name] => 世界
[pid] => 0
[2] => Array
(
[id] => 2
[name] => 中国
[pid] => 1
[4] => Array
(
[id] => 4
[name] => 湖南
[pid] => 2
)
)
[3] => Array
(
[id] => 3
[name] => 美国
[pid] => 1
)
)
)
$a = Array(
1 => Array(
'id' => 1,
'name' => '世界',
'pid' => 0,
2 => Array(
'id' => 2,
'name' => '中国',
'pid' => 1,
4 => Array(
'id' => 4,
'name' => '湖南',
'pid' => 2,
),
),
3 => Array(
'id' => 3,
'name' => '美国',
'pid' => 1,
),
),
);
tree($a);
function tree($ar) {
if(! is_array($ar)) return;
echo '<ul>';
foreach($ar as $item) {
echo "$item[id] $item[name]";
foreach($item as $t) {
if(is_array($t)) {
tree(array($t));
}
}
}
echo '</ul>';
}
1 世界
2 中国
4 湖南
3 美国
<ul>1 世界<ul>2 中国<ul>4 湖南</ul></ul><ul>3 美国</ul></ul>
$a = Array(
1 => Array(
// 'id' => 1,
'name' => '世界',
// 'pid' => 0,
2 => Array(
// 'id' => 2,
'name' => '中国',
// 'pid' => 1,
4 => Array(
// 'id' => 4,
'name' => '湖南',
// 'pid' => 2,
),
),
3 => Array(
// 'id' => 3,
'name' => '美国',
// 'pid' => 1,
),
),
);
$awesome = new RecursiveTreeIterator(
new RecursiveArrayIterator($a),
null, null, RecursiveIteratorIterator::LEAVES_ONLY
);
foreach ($awesome as $line)
echo $line . PHP_EOL;
[解决办法]
-世界
[解决办法]
[解决办法]
-中国
[解决办法]
\-湖南
\-美国