php 递归展现城市信息,PHP 递归兑现层级树状展现数据
PHP 遞歸實現層級樹狀展現數據
?
$arr['id'],
'fid' => $arr['fid'],
'name' => $arr['name'],
);
}
// 將數據按照縮進簡單排列 見圖1
function data2arr($tree, $rootId = 0, $level = 0) {
foreach($tree as $leaf) {
if($leaf['fid'] == $rootId) {
echo str_repeat(' ', $level) . $leaf['id'] . ' ' . $leaf['name'] . '
';
foreach($tree as $l) {
if($l['fid'] == $leaf['id']) {
data2arr($tree, $leaf['id'], $level + 1);
break;
}
}
}
}
}
data2arr($data);
echo '
-----------------------------------
';
// 將數據按照所屬關系封裝 見圖2
function arr2tree($tree, $rootId = 0) {
$return = array();
foreach($tree as $leaf) {
if($leaf['fid'] == $rootId) {
foreach($tree as $subleaf) {
if($subleaf['fid'] == $leaf['id']) {
$leaf['children'] = arr2tree($tree, $leaf['id']);
break;
}
}
$return[] = $leaf;
}
}
return $return;
}
$tree = arr2tree($data);
print_r($tree);
echo '
-----------------------------------
';
// 將數據使用HTML再次展現 見圖3
function tree2html($tree) {
echo '';
foreach($tree as $leaf) {
echo '
' .$leaf['name'];
if(! empty($leaf['children'])) tree2html($leaf['children']);
echo '';
}
echo '';
}
tree2html($tree);
?
?
?
圖 1:
?圖 2:
??圖 3:
相關文章
相關視頻
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的php 递归展现城市信息,PHP 递归兑现层级树状展现数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle查询大小写敏感参数,让Ora
- 下一篇: php workman 多线程,work