လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> linked list struction တွင် subsegments များခင်းကျင်းရန် array_slice ကိုသုံးပါ

linked list struction တွင် subsegments များခင်းကျင်းရန် array_slice ကိုသုံးပါ

gitbox 2025-05-26

PHP တွင် Linked List အဆောက်အအုံများကိုများသောအားဖြင့် php ကိုယ်တိုင်ကထည့်သွင်းထားသောစာရင်းအချက်အလက်များစာရင်းအချက်အလက်များမပါ 0 င်သောကြောင့်ဖြစ်သည်။ ချိတ်ဆက်ထားသောစာရင်း node များကိုကိုယ်စားပြုရန်အညွှန်းရေးရန် Array သို့မဟုတ် Associative Arraies များကို အသုံးပြု. ၎င်းတို့သည် array လုပ်ဆောင်ချက်များကိုဖြင့်လုပ်ကိုင်သည်။ Array_slice function သည် array ကြားဖြတ်မှုကိုကိုင်တွယ်ရန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။

array_slice function ကိုမိတ်ဆက်

Array_slice function ကို array တစ်ခုမှအချို့သောအရာများကိုကြားဖြတ်ရန်အသုံးပြုသည်။

 array array_slice ( array $array , int $offset [, int $length = NULL [, bool $preserve_keys = FALSE ]] )
  • $ Array သည် input array ဖြစ်သည်

  • $ offset သည်ကြားဖြတ်ခြင်း၏ start အနေအထားဖြစ်သည်။

  • $ အရှည် သည်ကြားဖြတ်သည့်အရှည်ဖြစ်သည်။ ပုံမှန်အားဖြင့်ခင်းကျင်းမှု၏အဆုံးကိုကြားဖြတ်ရန်ဖြစ်သည်။

  • $ Presentify_Keys သည် မူလခင်းကျင်းမှု၏သော့အမည်ကိုဆက်လက်ထိန်းသိမ်းထားသည်ဖြစ်စေ၎င်းသည်ပုံမှန်အားဖြင့်မရပ်တန့်ပါ (အညွှန်းကိန်းပြန်လည်တည်ဆောက်လိမ့်မည်)

ချိတ်ဆက်စာရင်းဖွဲ့စည်းပုံ၏ဥပမာ

ကျွန်ုပ်တို့သည် array ဖြင့်ရိုးရိုးချိတ်ဆက်ထားသောစာရင်းတစ်ခုစီကို simulce တစ်ခုစီနှင့်ချိတ်ဆက်ထားသည့်ဒြပ်စင်တစ်ခုစီနှင့်ချိတ်ဆက်ခြင်းကိုတုပသည်ဆိုပါစို့။

 $linkedList = [
    ['id' => 1, 'value' => 'A'],
    ['id' => 2, 'value' => 'B'],
    ['id' => 3, 'value' => 'C'],
    ['id' => 4, 'value' => 'D'],
    ['id' => 5, 'value' => 'E'],
];

ဤအချိန်တွင်ကျွန်ုပ်တို့သည်ဒုတိယ node (i.e. , B, C, D) မှ စ. node 3 ခု (i.E. , B, C, D) မှထုတ်ယူလိုပါက array_slice ကို သုံးနိုင်သည်။

အသုံးပြုမှုဆန္ဒပြ

 <?php
$linkedList = [
    ['id' => 1, 'value' => 'A'],
    ['id' => 2, 'value' => 'B'],
    ['id' => 3, 'value' => 'C'],
    ['id' => 4, 'value' => 'D'],
    ['id' => 5, 'value' => 'E'],
];

// အညွှန်းကိန်းကနေ 1(ဒုတိယ element)စက်နှိုး,ကြားကြား 3 ဒြပ်
$subList = array_slice($linkedList, 1, 3);

print_r($subList);
?>

output ရလဒ် -

 Array
(
    [0] => Array
        (
            [id] => 2
            [value] => B
        )

    [1] => Array
        (
            [id] => 3
            [value] => C
        )

    [2] => Array
        (
            [id] => 4
            [value] => D
        )
)

မှတ်သားရန်အရာ

  • array_slice သည် ပုံမှန်အားဖြင့်အညွှန်းကိုပြန်လည်တည်ဆောက်လိမ့်မည်။ အကယ်. သင်သည်မူရင်းသော့ချက်အမည်ကိုဆက်လက်ထိန်းသိမ်းထားလိုပါက, စတုတ်ထ parameter ကို မှန်ကန်စွာ သတ်မှတ်ရန်လိုအပ်သည်။

 $subList = array_slice($linkedList, 1, 3, true);
  • ချိတ်ဆက်ထားသောစာရင်းကို sequentential indexing ထက်သော့အမည်များ ( ဥပမာ ) ၏အဓိကအမည်များမှတဆင့်ဝင်ရောက်ကြည့်ရှုပါကအဓိကအမည်များကိုဆက်လက်ထိန်းသိမ်းရန်အလွန်အရေးကြီးသည်။

လက်တွေ့အချက်များ - ဒိုမိန်းအမည်များကိုအစားထိုးရန် URL ကိုသုံးပါ

ချိတ်ဆက်ထားသောစာရင်းတွင် URL အကွက်များပါ 0 င်သည်ဟုယူဆခြင်းသည် Domain Name ကို GitBox.net ရှိ URL အားလုံးတွင်အစားထိုးရန်လိုအပ်သည်။ ယခုအချိန်တွင်သင်သည်လိုအပ်သောအပိုင်းအစခင်းကျင်းမှုများကိုဖယ်ရှားရန်အတွက် array_slicle ကို ပထမဆုံး အသုံးပြု. ၎င်းကိုအစားထိုးရန်ဖြတ်သန်းနိုင်သည်။

နမူနာကုဒ်:

 <?php
$linkedList = [
    ['id' => 1, 'url' => 'https://example.com/page1', 'value' => 'A'],
    ['id' => 2, 'url' => 'https://example.com/page2', 'value' => 'B'],
    ['id' => 3, 'url' => 'https://example.com/page3', 'value' => 'C'],
    ['id' => 4, 'url' => 'https://example.com/page4', 'value' => 'D'],
    ['id' => 5, 'url' => 'https://example.com/page5', 'value' => 'E'],
];

// ထုတ်ယူပါ2ရောက်လာ4node တစ်ခု
$subList = array_slice($linkedList, 1, 3);

// ပြန်လည်နေရာချ url ဒိုမိန်းအမည်
foreach ($subList as &$node) {
    $urlParts = parse_url($node['url']);
    $newUrl = $urlParts['scheme'] . '://' . 'gitbox.net' . $urlParts['path'];
    if (isset($urlParts['query'])) {
        $newUrl .= '?' . $urlParts['query'];
    }
    $node['url'] = $newUrl;
}
unset($node);

print_r($subList);
?>

ထုတ်လုပ်မှု -

 Array
(
    [0] => Array
        (
            [id] => 2
            [url] => https://gitbox.net/page2
            [value] => B
        )

    [1] => Array
        (
            [id] => 3
            [url] => https://gitbox.net/page3
            [value] => C
        )

    [2] => Array
        (
            [id] => 4
            [url] => https://gitbox.net/page4
            [value] => D
        )
)

အကျဉ်းချုပ်

array_slice သည် PHP တွင်ခင်းကျင်းသောခင်းကျင်းမှုများကိုထုတ်ယူခြင်းအတွက်အဆင်ပြေသောလုပ်ဆောင်မှုတစ်ခုဖြစ်သည်။ ချိတ်ဆက်ထားသောစာရင်းဖွဲ့စည်းပုံ၏ array ကိုယ်စားပြုမှုနှင့်ပေါင်းစပ်ပြီးသင်လိုချင်သော node ကိုကြားဖြတ်ကိုကြားဖြတ်နိုင်သည်။ Parse_URL နှင့် string operations များနှင့် တွဲဖက်. ၎င်းသည်ကွန်ရက်အရင်းအမြစ်များကိုချိတ်ဆက်ထားသောစာရင်းတွင်ပါ 0 င်သည့်အခြေအနေများကိုကိုင်တွယ်ရန်အလွန်သင့်လျော်သော URL တွင် domain names များကိုအစားထိုးခြင်းများကိုအကောင်အထည်ဖော်နိုင်သည်။