PHP တွင် array_diff_ey () function ကို အသုံးပြု. နှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသော array များအကြားအဓိကကွဲပြားခြားနားမှုများကိုတွက်ချက်ရန်အသုံးပြုသည်။ အခြားခင်းကျင်းမှုတွင်တည်ရှိနေသောပထမ ဦး ဆုံးခင်းကျင်းမှုရှိသော့များအကြားကွဲပြားခြားနားမှုများပါ 0 င်သည့်ခင်းကျင်းမှုကိုပြန်လည်ရောက်ရှိစေသည်။ အကယ်. Array နှစ်ခုစလုံးတွင်သော့များသည်အတူတူပင်ဖြစ်သည်ဆိုပါကရလဒ်သည်အချည်းနှီးသောခင်းကျင်းမှုတစ်ခုဖြစ်သည်။
<?php
$array1 = [
'apple' => 'fruit',
'carrot' => 'vegetable',
'pear' => 'fruit'
];
$array2 = [
'apple' => 'fruit',
'carrot' => 'vegetable'
];
$result = array_diff_key($array1, $array2);
print_r($result);
?>
ထုတ်လုပ်မှု -
Array
(
[pear] => fruit
)
ဤကုဒ်သည် array_diff_key () function မှ inarraiff_key () function မှသော့ချက်များအကြားခြားနားချက်ကိုမည်သို့တွက်ချက်ရမည်ကိုပြသသည်။ ဤဥပမာတွင် ပုလဲသည် ဒေါ်လာ array 1 တွင်သာပေါ်လာသည်။
ပိုမိုအထူးအခြေအနေကိုထပ်မံလေ့လာကြည့်ရအောင်။ array_diff_key () ခင်းကျင်းခြင်း၏သော့များသည်ကြိုးကြိုးများမဟုတ်သလိုကိန်းများမဟုတ်ဘဲပြုမူမည်နည်း။ PHP တွင် array ၏သော့များသည်ကိန်းဂဏန်းများ, ကြိုးများ, သို့သော် PHP သည်အချို့သောဒေတာအမျိုးအစားများကို string သို့မဟုတ် integer type များကို array keys အဖြစ်ပြောင်းလဲပေးသည်။ ထို့ကြောင့်ခင်းကျင်းခြင်း၏သော့များသည်ကြိုးကြိုးများမဟုတ်ဘဲကြိုးများမဟုတ်သလိုကိန်းဂဏန်းများဖြစ်သည်။
အောက်ပါကုဒ်ကိုသုံးသပ်ကြည့်ပါ။
<?php
$array1 = [
new DateTime() => 'time object',
3.14159 => 'pi',
true => 'boolean'
];
$array2 = [
'2025-04-18 10:00:00' => 'time object',
3 => 'pi',
'1' => 'boolean'
];
$result = array_diff_key($array1, $array2);
print_r($result);
?>
ဤဥပမာတွင် ဒေါ်လာ array1 သည် ကွဲပြားခြားနားသောသော့အမျိုးအစားများကိုအသုံးပြုသည် ။ $ array2 သည် string ကို '2025-04-18 10:00:00' , ကိန်း 3 နှင့် string ကို '1' 'Trring' 1 ' ကိုအသုံးပြုသည်။ array_diff_key () သည် ဤသော့များကိုကိုင်တွယ်လိမ့်မည်ကိုလေ့လာကြည့်ကြစို့။
PHP သည် array keys များ, non-integer နှင့် string မဟုတ်သောသော့များကိုရိုက်ထည့်သောအခါ PHP ကိုရိုက်ထည့်သည်။ အထူးသဖြင့်:
datetime အရာဝတ်ထုသည်၎င်း၏ string ကိုကိုယ်စားပြုမှု ( DateTime :: __ thtring) ) သို့ကူးပြောင်းသည်။
Floating Point နံပါတ် 3.14159 ကို string ကို "3.14159" သို့ကူးပြောင်းလိမ့်မည်။
Boolean True Value ကို string ကို "1" သို့ကူးပြောင်းလိမ့်မည်။
ထို့ကြောင့် array_diff_ey () ကို ဤသော့များကိုပြုပြင်သည့်အခါမူရင်းသော့များနှင့်နှိုင်းယှဉ်နိုင်သည်။
array_diff_key () သည် အဓိကအမျိုးအစားပြောင်းလဲခြင်းစည်းမျဉ်းများအရနှိုင်းယှဉ်ပါလိမ့်မည်။ Array ၏သော့များသည်ကြိုးကြိုးများမဟုတ်သလိုကိန်းများမဟုတ်လျှင် PHP သည်ဤသော့များကိုကြိုးကြိုးများသို့မဟုတ်ကိန်းဂဏန်းများသို့အလိုအလျောက်ပြောင်းလဲပြီးဤပြောင်းလဲထားသောတန်ဖိုးများအပေါ် အခြေခံ. ၎င်းတို့ကိုနှိုင်းယှဉ်ပါလိမ့်မည်။ အထူးသဖြင့်အရာဝတ်ထုများသို့မဟုတ် booleans အချို့အထူးဒေတာအမျိုးအစားများအတွက်ရှားပါးသောရလဒ်များဖြစ်နိုင်သည်။ ထို့ကြောင့် array_diff_key () ကိုအသုံးပြုသောအခါ array ၏သော့များသည်မမျှော်လင့်သောအမျိုးအစားပြောင်းလဲခြင်းကိုရှောင်ရှားရန်ခင်းကျင်းမှု၏သော့များသည်ကြိုးများသို့မဟုတ်ကိန်းများဖြစ်ကြောင်းသေချာစေရန်အကောင်းဆုံးဖြစ်သည်။