PHP, array_map () နှင့် array_diff_Usassoc () တွင်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်နှစ်ခုမှာကျွန်ုပ်တို့ကိုကူညီနိုင်ပြီးကွဲပြားခြားနားသောအခြေအနေများတွင်ပါဝင်နိုင်သည့်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည် array_map () ကို ပထမ ဦး စွာ သုံး. array_map (အရင်ပထမ ဦး စွာ) မည်သို့ပြောင်းလဲရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။
array_map () function ကို callback function ကိုတစ် ဦး ခင်းကျင်းထားသည့် element တစ်ခုစီကို callback function ကိုပြောင်းလဲနိုင်သည်။ အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array_map(callable $callback, array $array1, array ...$arrays);
$ callback : array element တွေကို process လုပ်ဖို့အသုံးပြုတဲ့ callback function ကို။
$ array1, ... $ arrays : တစ်ခုသို့မဟုတ်တစ်ခုထက်ပိုသော input arrays ။
Array_map () element တစ်ခုစီသည် $ callback function မှပြုလုပ်သောတန်ဖိုးတစ်ခုဖြစ်သောခင်းကျင်းမှုအသစ်တစ်ခုကိုပြန်လည်ရောက်ရှိစေသည်။
array_diff_Usassoc () function သည်နှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသော array နှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသောအရာများကိုနှိုင်းယှဉ်ရန်အသုံးပြုသည်။ ပုံမှန် array_diff () , array_diff_UAASPOC () ကိုမတူဘဲအဓိကအကြောင်းရင်းများကိုနှိုင်းယှဉ်ရန်စိတ်ကြိုက်နှိုင်းယှဉ်မှု function ကိုကျွန်ုပ်တို့အားခွင့်ပြုသည်။
အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array_diff_uassoc(array $array1, array $array2, callable $key_compare_func);
$ array1 : နှိုင်းယှဉ်ခံရဖို့ပထမ ဦး ဆုံးခင်းကျင်း။
$ array2 : နှိုင်းယှဉ်ရန်ဒုတိယခင်းကျင်း။
$ key_compare_funct : array key names ကိုနှိုင်းယှဉ်ရန်အသုံးပြုသော callback function ကို။
ယခုတွင်လက်တွေ့ကျပုံဥပမာကိုကြည့်ကြပါစို့, array_map () ကိုအသုံးပြုပြီး array_map () ကိုအသုံးပြုပြီး array_diff_UAASTIOR () ကို အသုံးပြုနည်း။
ထုတ်ကုန်နှစ်ခု၏စျေးနှုန်းများနှင့်အမည်များကိုကိုယ်စားပြုသော arry နှစ်ခုရှိသည်ဆိုပါစို့။
$products1 = [
101 => "Apple",
102 => "Banana",
103 => "Orange"
];
$products2 = [
101 => "Apple",
102 => "Grapes",
104 => "Mango"
];
// စြေး
$prices1 = [
101 => 3,
102 => 2,
103 => 1
];
$prices2 = [
101 => 3,
102 => 2.5,
104 => 1.5
];
ထုတ်ကုန်အမည်ကိုစာလုံးအကြီးများနှင့်စာလုံးအကြီးများဖြင့်ပြောင်းလဲလိုပါကစျေးနှုန်းချိုသာစွာနှင့်နှိုင်းယှဉ်ရန်အတွက် array_diff_Usassoc () ကို အသုံးပြုလိုသည်ဆိုပါစို့။
// ထုတ်ကုန်အမည်ကိုစာလုံးအကြီးများသို့ပြောင်းပါ
$products1 = array_map('strtoupper', $products1);
$products2 = array_map('strtoupper', $products2);
// အသုံးပြု array_diff_uassoc 比较စြေး数组(သော့နာမည်အတူတူပင်ဖြစ်သည်,စြေး不同)
$price_diff = array_diff_uassoc($prices1, $prices2, function ($key1, $key2) {
return $key1 - $key2;
});
print_r($price_diff);
ထုတ်ကုန်များကိုစာလုံးကြီးများသို့ပြောင်းရန်အတွက် array_map ('strutoupper', array_map ('strutoupper) နှင့် array_map (' strtoupper, $ ထုတ်ကုန်များ) ကို အသုံးပြုသည်။ ဤနည်းအားဖြင့်အမည်များကိုအထက်နှင့်အသေးများကြောင့်မထိခိုက်ပါ။
Array_diff_UAASTCEC () ကို စျေးနှုန်းများကိုနှိုင်းယှဉ်ရန်အသုံးပြုသည်။ ကျွန်ုပ်တို့သည်သော့ချက်အမည်များ ( $ key1 - $ key2 ) ကိုနှိုင်းယှဉ်ခြင်းအတွက်ရိုးရှင်းသော callback function ကိုပေးပါသည်။ နှစ်ခု array နှစ်ခု၏အဓိကအကြောင်းအမည်များမှာတူညီသော်လည်းသက်ဆိုင်သောစျေးနှုန်းများမှာကွဲပြားခြားနားသည် ။
အထက်ပါကုဒ်ကိုဖွင့်သောအခါကျွန်ုပ်တို့သည် output ကိုရရှိသည်။
Array
(
[102] => 2
[104] => 1.5
)
ဤဥပမာတွင်ကုန်ပစ္စည်း IDS 102 နှင့် 104 ၏စျေးနှုန်းများသည်ကွဲပြားခြားနားသောကြောင့်၎င်းတို့ကိုပြန်ရောက်သည်။
အကျဉ်းချုပ်
ဤဆောင်းပါးသည် PHP ရှိ array_map () နှင့် array_diff_diff_USIFT_USIFT_USIFT_DIFF_UASOC () function များကိုမည်သို့အသုံးပြုရမည်ကိုဖော်ပြသည်။ ကျွန်ုပ်တို့သည် array_map () ကို ပထမ ဦး ဆုံးအသုံးပြုသည်။ ထို့နောက် element များကိုခင်းကျင်းရေးတွင်ပြောင်းရန်နှင့် elements ကွဲပြားခြားနားသောသော့ချက်များနှင့်ကွဲပြားခြားနားသောတန်ဖိုးများနှင့်နှိုင်းယှဉ်ထားသည် ။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ကွဲပြားခြားနားသောလိုအပ်ချက်များကိုဖြည့်ဆည်းရန်စီစဉ်ခြင်းနှင့်နှိုင်းယှဉ်နိုင်သည်။
အမြီးနှင့်ဆောင်းပါးအကြောင်းအရာများအကြားလိုင်းများခွဲဝေ