လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_fille () မှေးမှိန် arrays ဖန်တီးရန် array_filte () သည်မည်မျှထိရောက်မှုရှိသနည်း။

array_fille () မှေးမှိန် arrays ဖန်တီးရန် array_filte () သည်မည်မျှထိရောက်မှုရှိသနည်း။

M66 2025-06-05

PHP ဖွံ့ဖြိုးတိုးတက်ရေးကာလအတွင်းကျွန်ုပ်တို့သည် "ကျဲခင်းခင်းများ" ဖန်တီးရန်လိုအပ်သည့်အခြေအနေများကြုံတွေ့ရလေ့ရှိသည်။ PHP တွင် strack array များကိုလက်စွဲတာ 0 ်ဖြင့်အကောင်အထည်ဖော်နိုင်သည်။ ဒီတော့ array_filling () မှေးမှိန် arrray ဖန်တီးရန်တကယ်သင့်လျော်ပါသလား? ဒီနေရာမှာခွဲခြမ်းစိတ်ဖြာကြပါစို့။

array_filt ကွပ်ကဘာလဲ () ?

array_file () သည် array များကိုလျင်မြန်စွာဖြည့်ဆည်းရန် function တစ်ခုဖြစ်သည်။ အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 array array_fill ( int $start_index , int $count , mixed $value )
  • $ start_index : အညွှန်းကိန်းကိုစတင်ပါ။

  • $ ရေတွက် : ဖြည့်ဖို့ဒြပ်စင်အရေအတွက်။

  • $ တန်ဖိုး - element တစ်ခုစီ၏တန်ဖိုး။

ဥပမာအားဖြင့်:

 $result = array_fill(5, 3, 'test');
print_r($result);

အောက်ပါအတိုင်း output ကို:

 Array
(
    [5] => test
    [6] => test
    [7] => test
)

သင်မြင်သည့်အတိုင်း၎င်းသည် element 3 ခုကိုအညွှန်း 5 မှ စ. တန်ဖိုးရှိ 'ဟူသောတန်ဖိုးကိုစမ်းသပ်ခြင်း ဖြင့်ဖြည့်ဆည်းပေးသည်။

ရှားပါးသော arrray ၏ဝိသေသလက္ခဏာများ

ရှားပါးသော starray ၏အဓိကလက်ခဏာတစ်ခုမှာအညွှန်းများအကြား "တွင်းများ" ရှိနိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်အညွှန်းကိန်း 3, 15 နှင့် 1000 တွင်တန်ဖိုးများရှိရန်လိုပေမည်။

လက်ဖြင့်ဆောက်လုပ်ခြင်းမှေးမှိန်ရန်တည်ဆောက်ခြင်းသည်ဤကဲ့သို့ဖြစ်နိုင်သည်။

 $data = [];
$data[3] = 'alpha';
$data[15] = 'beta';
$data[1000] = 'gamma';

ဤချဉ်းကပ်မှုသည်အလွန်အလိုလိုသိသောကြောင့် PHP ၏ Array သည်နေရာအလွန်အမင်းမတက်ပါ, ဘာကြောင့်လဲဆိုတော့ PHP ၏ Array သည် Memory Memory Memory ကိုမယူပါ။

array_filling () နှင့်အတူကျဲ starray ဖန်တီးရန် ok လား။

သီအိုရီအရသင်သည်အချို့သောစဉ်ဆက်မပြတ်ကျဲအပိုင်းကိုဖန်တီးရန် array_fille () ကို သုံးနိုင်သည်။ ဥပမာအားဖြင့်:

 $data = array_fill(1000, 1, 'only_one');

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

 Array
(
    [1000] => only_one
)

၎င်းသည် High-Bit Indexes တွင်တာ 0 န်ကိုအကောင်အထည်ဖော်ရန်အတွက်အကောင်အထည်ဖော်မှုကိုအကောင်အထည်ဖော်ရန်အတွက် array_flation () အငြင်းပွားဖွယ်အညွှန်းကိန်းမျိုးစုံကိုသင်တစ်ချိန်တည်းတွင်ပြုလုပ်လိုပါကတစ်ချိန်တည်းတွင်ပြုလုပ်လိုပါကတစ်ချိန်တည်းတွင်ပြုလုပ်လိုပါကတစ်ပြိုင်နက်တည်းလုပ်ဆောင်ခြင်းမရှိပါ။ သင်ကအကြိမ်ကြိမ်ခေါ်ဆိုရမယ်

 $data = array_fill(3, 1, 'alpha') + 
        array_fill(15, 1, 'beta') + 
        array_fill(1000, 1, 'gamma');

၎င်းသည်သင်လိုချင်သောကွက်ကွက်ကွက်ကွက်ကွက်ကွက်ကွက်ကွက်ကွက်ကွက်ကွက်ကွက်ကွက်သစ်ကိုရရှိမည်ဖြစ်သည်။ သို့သော်၎င်းသည်အမှန်တကယ် "ထိရောက်သောအစု" ၏အားသာချက်ကိုဆုံးရှုံးစေသည်။ ဆန့်ကျင်ဘက်အနေဖြင့်တိုက်ရိုက်လက်စွဲစာအုပ်ကိုပိုမိုတိကျသည်။

 $data = [
    3 => 'alpha',
    15 => 'beta',
    1000 => 'gamma'
];

ဒီတော့ array_fille () ကို ဘယ်အချိန်မှာသုံးသင့်သလဲ။

array_flation ၏အားသာချက် () သည်စဉ်ဆက်မပြတ်စတင်ခြင်းဖြစ်သည်။

  • စားပွဲ၌ကန ဦး တန်ဖိုးများကိုထုတ်လုပ်ပါ။

  • စည်းလုံးညီညွတ်မှုအချို့တည်ဆောက်ပုံကိုပေါင်းစပ်ခြင်း (ဥပမာ 0 padding, boolean padding) ။

  • စတင်အနေအထားကိုဖြစ်ပေါ်စေရန်ကန ဦး offset ကေဘယ်ကြိုးကိုထိန်းချုပ်သည်။

သို့သော်သင်သည် "အဆက်ပြတ်အညစ်အကြေးများ" သို့မဟုတ် "ကြီးမားသောကြားကာလများ" သို့မဟုတ် "ကြီးမားသောကြားကာလ" နှင့်အတူကျဲခင်းရန်လိုအပ်ကြောင်းနှင့်ရင်ဆိုင်နေရလျှင်၎င်းသည်အသင့်တော်ဆုံးကိရိယာမဟုတ်ပါ။

အကျဉ်းချုပ်

array_flate () သည်အမြဲတမ်းအညွှန်းကိန်းများနှင့်အတူ array များလျင်မြန်စွာစတင်ရန်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ သို့သော်ပုံမှန် "ကျဲခင်းခင်းကျင်း" ကိုတည်ဆောက်ရာတွင်၎င်းသည်အစွမ်းထက်ပုံရသည်။ အကယ်. သင်၏လိုအပ်ချက်များသည်ပြတ်တောက်သောရှားပါးသော array များဖြစ်ပါကအညွှန်းရှာဖွေရန်အတွက်တိုက်ရိုက်သုံးခြင်းနည်းလမ်းသည် ပို. ပြောင်းလွယ်ပြင်လွယ်။ ထိန်းချုပ်နိုင်သည်။

အကယ်. သင်သည်ကျိတ်ညွှန်းကိန်းခင်းကျင်းရန်အတွက်စည်းလုံးညီညွတ်သောယုတ္တိဗေဒအချို့ရှိပါက array_fillation () အကောင်အထည်ဖော်မှုကိုပေါင်းစပ်ရန်အထောက်အမပေးသောလုပ်ဆောင်မှုကိုသင်ခန်းစာယူနိုင်သည်။ ဥပမာအားဖြင့်:

 function sparse_fill(array $indexes, $value) {
    $result = [];
    foreach ($indexes as $index) {
        $result[$index] = $value;
    }
    return $result;
}

$data = sparse_fill([3, 15, 1000], 'example');

ဤနည်းလမ်းသည်ကြီးမားသောကျဲဖြည့်ရန်လိုအပ်ချက်များအတွက်ပိုမိုသင့်တော်ပြီးထိန်းသိမ်းရန်ပိုမိုလွယ်ကူသည်။

နောက်ထပ်ဖတ်ရှုခြင်း