PHP ဖွံ့ဖြိုးတိုးတက်ရေးကာလအတွင်းကျွန်ုပ်တို့သည် "ကျဲခင်းခင်းများ" ဖန်တီးရန်လိုအပ်သည့်အခြေအနေများကြုံတွေ့ရလေ့ရှိသည်။ PHP တွင် strack array များကိုလက်စွဲတာ 0 န ်ဖြင့်အကောင်အထည်ဖော်နိုင်သည်။ ဒီတော့ array_filling () မှေးမှိန် arrray ဖန်တီးရန်တကယ်သင့်လျော်ပါသလား? ဒီနေရာမှာခွဲခြမ်းစိတ်ဖြာကြပါစို့။
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 မှ စ. တန်ဖိုးရှိ 'ဟူသောတန်ဖိုးကိုစမ်းသပ်ခြင်း ဖြင့်ဖြည့်ဆည်းပေးသည်။
ရှားပါးသော starray ၏အဓိကလက်ခဏာတစ်ခုမှာအညွှန်းများအကြား "တွင်းများ" ရှိနိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်အညွှန်းကိန်း 3, 15 နှင့် 1000 တွင်တန်ဖိုးများရှိရန်လိုပေမည်။
လက်ဖြင့်ဆောက်လုပ်ခြင်းမှေးမှိန်ရန်တည်ဆောက်ခြင်းသည်ဤကဲ့သို့ဖြစ်နိုင်သည်။
$data = [];
$data[3] = 'alpha';
$data[15] = 'beta';
$data[1000] = 'gamma';
ဤချဉ်းကပ်မှုသည်အလွန်အလိုလိုသိသောကြောင့် PHP ၏ Array သည်နေရာအလွန်အမင်းမတက်ပါ, ဘာကြောင့်လဲဆိုတော့ PHP ၏ Array သည် Memory Memory Memory ကိုမယူပါ။
သီအိုရီအရသင်သည်အချို့သောစဉ်ဆက်မပြတ်ကျဲအပိုင်းကိုဖန်တီးရန် 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_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');
ဤနည်းလမ်းသည်ကြီးမားသောကျဲဖြည့်ရန်လိုအပ်ချက်များအတွက်ပိုမိုသင့်တော်ပြီးထိန်းသိမ်းရန်ပိုမိုလွယ်ကူသည်။