0 က်ဘ်ဆိုက်သို့မဟုတ်စနစ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်သစ်ပင်များသည်အမျိုးအစားများ, ခွင့်ပြုချက်များစီမံခန့်ခွဲမှုသို့မဟုတ်အဖွဲ့အစည်းဆိုင်ရာဖွဲ့စည်းပုံကဲ့သို့သောအဆင့်ဆင့်အချက်အလက်များကိုပြသရန်အသုံးပြုသည်။ PHP သည်သစ်ပင်ဖွဲ့စည်းပုံကားချပ်များကိုအကောင်အထည်ဖော်ရန်ပြောင်းလွယ်ပြင်လွယ်ရှိသောနည်းလမ်းဖြစ်သည်။ အဓိကအတွေးအခေါ်နှစ်မျိုးရှိသည်။
အသိုက်ကွင်းများကိုအကောင်အထည်ဖော်ရန်စိတ်ကူးသည် node များနှင့်၎င်းတို့၏မိဘကလေး၏ဆက်ဆံရေးကို array များမှတဆင့်သိမ်းဆည်းရန်ဖြစ်သည်။
$nodes = [
[
'id' => 1,
'parent_id' => null,
'children' => [2, 3]
],
[
'id' => 2,
'parent_id' => 1,
'children' => []
],
[
'id' => 3,
'parent_id' => 1,
'children' => []
],
];
function createTree($nodes) {
$tree = '<ul>';
foreach ($nodes as $node) {
$tree .= '<li>' . $node['id'];
if (!empty($node['children'])) {
$tree .= createTree($node['children']);
}
$tree .= '</li>';
}
$tree .= '</ul>';
return $tree;
}
echo createTree($nodes);အထက်ဖော်ပြပါကုဒ်သည်အခြေခံသစ်ပင်တည်ဆောက်ပုံ HTML ကိုကွင်းဆက်များနှင့် function ခေါ်ဆိုမှုများဖြင့်တည်ဆောက်သည်။
recursive method သည်အသိုက်ကွင်းများထက်ပိုမိုအကောက်အိပ်သည်။ ပြန်လည်ထူထောင်ရေး function ကိုမှတစ်ဆင့်မိမိကိုယ်ကိုခေါ်ဆိုခြင်းအားဖြင့်သင်သည် Multi-level node များကိုအလွယ်တကူဖော်ပြနိုင်သည်။
function createTree($nodes, $depth = 0) {
$tree = '';
foreach ($nodes as $node) {
$tree .= '<li style="padding-left:' . $depth * 10 . 'px">' . $node['id'] . '</li>';
if (!empty($node['children'])) {
$tree .= createTree($node['children'], $depth + 1);
}
}
return $tree;
}
$nodes = [
[
'id' => 1,
'parent_id' => null,
'children' => [2, 3]
],
[
'id' => 2,
'parent_id' => 1,
'children' => []
],
[
'id' => 3,
'parent_id' => 1,
'children' => []
],
];
echo createTree($nodes);ဤပြန်လည်ထူထောင်ရေးချဉ်းကပ်မှုသည်ဖွဲ့စည်းပုံကိုရှင်းလင်းစွာပြုလုပ်နိုင်ပြီးရှေ့ဆုံးတွင်စတိုင်များသို့မဟုတ်အပြန်အလှန်ယုတ်ညံ့သည့်ယုတ္တိဗေဒများကိုပိုမိုဖြည့်ဆည်းပေးနိုင်သည်။
အထက်ဖော်ပြပါနည်းလမ်းများနှစ်ခုလုံးသည် Php Tree Comple ဖွဲ့စည်းပုံပုံကြမ်းကိုအောင်မြင်နိုင်သည်။ ဒေတာအဆောက်အအုံများသည်ရေတိမ်ပိုင်းရှိသည့်အခါအသိုက်ကွင်းများသင့်တော်သည်။ အမှန်တကယ်လိုအပ်ချက်များအပေါ် အခြေခံ. သင့်လျော်သောအကောင်အထည်ဖော်သည့်နည်းလမ်းကိုရွေးချယ်ခြင်းသည်ဖွံ့ဖြိုးမှုစွမ်းရည်နှင့်ကုဒ်ဖတ်နိုင်သည့်နည်းလမ်းများကိုများစွာတိုးတက်စေနိုင်သည်။