PHP တွင် array_fatch_keys () တွင်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်ပြီးသတ်မှတ်ထားသောသော့များကို အသုံးပြု. သော့အသစ်များကိုအလျင်အမြန်ဖန်တီးပြီးတန်ဖိုးအားလုံး၏တန်ဖိုးများကိုတူညီသောတန်ဖိုးကိုသတ်မှတ်ထားသည်။ ဒါကြောင့်မေးခွန်းကတော့ငါတို့ array_fatch_eys () function ကိုဖြည့်တန်ဖိုးကိုဖြည့်တန်ဖိုးကိုသုံးလို့ရမလား။
အဖြေမှာ - ဟုတ်ကဲ့ , သို့သော်မှတ်သားစရာတစ်ခုရှိသည်။
array_fill_keys(array $keys, mixed $value): array
$ သော့များသည် သင်သတ်မှတ်လိုသောသော့ချက်အမည်များပါ 0 င်သည်။
$ တန်ဖိုး သည်သော့တစ်ခုစီကိုသင်သတ်မှတ်လိုသောတန်ဖိုးဖြစ်သည်။
Anonymous function ကို array_fatch_keys သို့ $ တန်ဖိုးကို $ တန်ဖိုး အဖြစ်သင်ဖြတ်သန်းနိုင်သော်လည်းသင်မျှော်လင့်ထားသည့်အတိုင်းမလုပ်ဆောင်နိုင်ပါ။ ၎င်းသည် သော့တစ်ခုစီအတွက်ဤအမည်မသိ function ကို execute လုပ်ခြင်းမဟုတ်ဘဲ သော့ခလောက်သော function ကိုရည်ညွှန်းသည်။
<?php
$keys = ['apple', 'banana', 'cherry'];
$array = array_fill_keys($keys, function() {
return rand(1, 100);
});
print_r($array);
ရလဒ်ရလဒ် -
Array
(
[apple] => Closure Object
[banana] => Closure Object
[cherry] => Closure Object
)
သင်မြင်နိုင်သည့်အတိုင်းသော့တစ်ခုစီနှင့်သက်ဆိုင်သောတန်ဖိုးသည် ပိတ်ထားသော အရာဝတ်ထုတစ်ခုဖြစ်ပြီးအမည်မသိ function တစ်ခု၏ ကွပ်မျက်မှုရလဒ် ဖြစ်သည်။ ဆိုလိုသည်မှာသင်သည်သော့တစ်ခုချင်းစီကိုအမည်မသိလုပ်ဆောင်မှုများမှထုတ်လုပ်သောကွဲပြားသောတန်ဖိုးကိုရလိုပါကသင်တိုက်ရိုက် မလုပ်နိုင်ပါ ။
အကယ်. သော့တစ်ခုစီအတွက်ကွဲပြားသောတန်ဖိုးတစ်ခု (ကွဲပြားခြားနားသောကျပန်းကဲ့သို့သောနံပါတ်တစ်ခုကဲ့သို့) ကွဲပြားခြားနားသောတန်ဖိုးကိုထုတ်လုပ်လိုပါကဖြတ်သန်းရန်အတွက်အမည်မသိလုပ်ဆောင်မှုများကိုသင် လုပ်ဆောင် သင့်သည်။
<?php
$keys = ['apple', 'banana', 'cherry'];
$array = [];
foreach ($keys as $key) {
$array[$key] = (function() {
return rand(1, 100);
})();
}
print_r($array);
နမူနာ output ကို:
Array
(
[apple] => 73
[banana] => 25
[cherry] => 89
)
array_map () ကို သုံးနိုင်သည်။
<?php
$keys = ['apple', 'banana', 'cherry'];
$array = array_combine($keys, array_map(function() {
return rand(1, 100);
}, $keys));
print_r($array);
သင်သည်သေးငယ်သော application တစ်ခုတည်ဆောက်နေသည်ဆိုပါစို့။ module တစ်ခုစီသည်ပုံမှန်ပရိုဆက်ဆာလိုအပ်သည်ဆိုပါစို့။
<?php
$modules = ['news', 'shop', 'forum'];
$defaultHandler = function($module) {
return "https://m66.net/handler/{$module}";
};
$config = [];
foreach ($modules as $module) {
$config[$module] = $defaultHandler($module);
}
print_r($config);
ရလဒ်ဥပမာ:
Array
(
[news] => https://m66.net/handler/news
[shop] => https://m66.net/handler/shop
[forum] => https://m66.net/handler/forum
)
array_put_eys () အမည်မသိလုပ်ဆောင်ချက်များကိုတန်ဖိုးများအဖြစ်ဖြတ်သန်းခြင်းကိုထောက်ခံသော်လည်း၎င်းကိုမကွပ်မျက်သည်။
အကယ်. သင်သည်ပြောင်းလဲနေသောတန်ဖိုးများကိုထုတ်လုပ်လိုပါက, သင်၏အမည်မသိလုပ်ငန်းများကိုကွင်းများသို့မဟုတ် array_map () တွင်ခေါ်ဆိုသင့်သည်။
array_put_eys () သည် static value filling အတွက်ပိုမိုသင့်တော်သည်။
PHP ရှိ array_put_keys () နှင့်အမည်မသိလုပ်ဆောင်ချက်များအကြားအသုံးပြုမှုကွဲပြားခြားနားမှုများကိုပိုမိုနားလည်သဘောပေါက်ရန်ဤဆောင်းပါးကဤဆောင်းပါးကသင့်အားပိုမိုကောင်းမွန်သောနားလည်မှုကိုပိုမိုနားလည်ရန်ကူညီနိုင်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။ အကယ်. သင်သည်ဤအခြေခံအပြုအမူအမျိုးအစားကိုသင်စိတ်ဝင်စားပါက PHP arrays ၏အပြုအမူကိုပိုမိုနက်ရှိုင်းစွာနားလည်ရန်သင်ကြိုးစားပြီးသင်ပိုမိုရရှိနိုင်သည်။