လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Queue Debquewinging စစ်ဆင်ရေးကိုအကောင်အထည်ဖော်ရန် Array_SLICE ကိုသုံးပါ

Queue Debquewinging စစ်ဆင်ရေးကိုအကောင်အထည်ဖော်ရန် Array_SLICE ကိုသုံးပါ

gitbox 2025-05-29

Array_Slice သည် PHP မှခင်းကျင်းအပိုင်းအစများကိုထုတ်ယူရန်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ ၎င်းသည်ခင်းကျင်းမှုမှအချို့သောအရာများကိုကြားဖြတ်ပြီးမူရင်းခင်းကျင်းမှုကိုမထိခိုက်စေဘဲအသစ်တစ်ခုကိုအသစ်တစ်ခုသို့ပြန်ပို့နိုင်သည်။ အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
  • $ array : လည်ပတ်ရန်ခင်းကျင်း။

  • $ Offset : Intercepting စတင်ရန်မည်သည့်နေရာတွင် 0 ကိုဆိုလိုသည်။

  • $ အရှည် (optional ကို): ကြားဖြတ်အရှည်။

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

တန်းစီ၏စိတ်ကူး

Queue တွင် dequeueing သည်ပထမဆုံး element ကိုထုတ်ယူ။ ဖယ်ရှားရန်ဖြစ်သည်။ ဤစစ်ဆင်ရေးကိုတိုက်ရိုက်ဖြည့်စွက်နိုင်သော PHP တွင် array_shift () function တစ်ခုရှိသော်လည်းဤဆောင်းပါးသည်ဤလုပ်ငန်းစဉ်ကိုအကောင်အထည်ဖော်ရန် array_slice ကို မည်သို့အသုံးပြုရမည်ကိုအဓိကထားသည်။

ကျွန်ုပ်တို့တွင်လူတန်းကိုကိုယ်စားပြုသောခင်းကျင်းမှုတစ်ခုရှိသည်ဆိုပါစို့။

 $queue = ['A', 'B', 'C', 'D'];

လှေကားထစ်များကိုလှေကားထစ်ရန်လိုအပ်သည်။

  1. ပထမ ဦး ဆုံး element ကို 'A' ကိုဖယ်ရှားပါ။

  2. ကျန်ရှိသောဒြပ်စင်များသည်တန်းစီအသစ်တစ်ခုကိုဖွဲ့စည်းသည်

array_slice ကို အသုံးပြု. ငွေလဲလှယ်မှုကိုအကောင်အထည်ဖော်ရန်

 <?php
// မူရင်းတန်းစီ
$queue = ['A', 'B', 'C', 'D'];

// အဖွဲ့၏ခေါင်းကိုဒြပ်စင်ထုတ်ယူပါ
$dequeueElement = $queue[0];

// အသုံးပြု array_slice အသစ်တစ်ခုကို generate,ပထမ element ကိုကျော်သွားပါ
$queue = array_slice($queue, 1);

// ရလဒ်ရလဒ်
echo "ထွက်ခွာခြင်း၏ဒြပ်စင်သည်:" . $dequeueElement . "\n";
echo "အသစ်ကတန်းစီသည်:";
print_r($queue);
?>

ရလဒ်များအစက်အပြောက်:

 ထွက်ခွာခြင်း၏ဒြပ်စင်သည်:A
အသစ်ကတန်းစီသည်:
Array
(
    [0] => B
    [1] => C
    [2] => D
)

သုံးသပ်ကြည့်ရှုခြင်း

  • $ Queue [0] သည် debqueue element အဖြစ်ပထမဆုံး element ကိုတိုက်ရိုက်ရယူသည်။

  • array_slice ($ Queue, 1) သည် အညွှန်းကိန်း 1 မှအစပြုသည်။

ဤသည်တန်းစီ၏ခွေးကောင်ကိုတုပရန် array_slice ၏အသုံးပြုမှုကိုအသုံးပြုသည်။

Advanced: လုပ်ဆောင်ချက်များကိုသို့ encapsulated

Multiplexing ကိုအဆင်ပြေစေရန်အတွက်၎င်းကို function တစ်ခုသို့ encapsulated လုပ်နိုင်သည်။

 <?php
function queueDequeue(array &$queue) {
    if (empty($queue)) {
        return null; // တန်းစီသည်အချည်းနှီးဖြစ်သည်,ပြန်လာ null
    }
    $element = $queue[0];
    $queue = array_slice($queue, 1);
    return $element;
}

// နမူနာ
$queue = ['A', 'B', 'C', 'D'];
$first = queueDequeue($queue);

echo "ထွက်ခွာ element တွေကို:" . $first . "\n";
print_r($queue);
?>

အကျဉ်းချုပ်

  • Array_Slice သည် array တစ်ခု၏ "ကျန်ရှိသောဒြပ်စင်" ကိုကြားဖြတ်ရန်အလွန်သင့်လျော်သောမည်သည့်အပိုင်းအစကိုမဆိုအာရုံစိုက်ရန်အသုံးပြုနိုင်သည်။

  • array ၏ပထမ ဦး ဆုံး element ကိုတိုက်ရိုက်ဝင်ရောက်ခွင့်နှင့်အတူ congined, တန်းစီ function ကိုအကောင်အထည်ဖော်။

  • Array_shift သည်ပိုမိုတိုက်ရိုက်ဖြစ်သော်လည်း array_slicle ကို အသုံးပြု. array_slicle များကိုအသုံးပြုခြင်းသည်သင်နားလည်မှုကိုပိုမိုနားလည်စေပြီးပိုမိုရှုပ်ထွေးသောတန်းစီအပြုအမူများကိုစိတ်ကြိုက်ပြုလုပ်ရန်လွယ်ကူစေသည်။

PHP နှင့်သက်ဆိုင်သောအကြောင်းအရာများအတွက် ကျေးဇူးပြု. https://gitbox.net/php--pp-array-ffunctions ကို ဆက်သွယ်ပါ။