လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> JSON decoding ပြီးနောက် Array keys အတွက်အပြောင်းအလဲများကိုရှာဖွေတွေ့ရှိရန်အစွမ်းထက်ကိရိယာတစ်ခု

JSON decoding ပြီးနောက် Array keys အတွက်အပြောင်းအလဲများကိုရှာဖွေတွေ့ရှိရန်အစွမ်းထက်ကိရိယာတစ်ခု

M66 2025-06-06

PHP ပရိုဂရမ်တွင် array_diff_ukey () function ကိုအသုံးပြုလေ့ရှိပြီး array နှစ်ခု၏သော့များကိုနှိုင်းယှဉ်ရန်နှင့်တစ်ခုမျှမတည်ရှိသည့်အဓိကကွဲပြားခြားနားမှုများကိုပြန်ပို့ရန်မကြာခဏအသုံးပြုလေ့ရှိသည်။ ဤလုပ်ဆောင်ချက်သည်အထူးသဖြင့် JSON ဒေတာများကိုပြုပြင်သည့်အခါ array key နှိုင်းယှဉ်မှုများအတွက်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။ JSON diamode ပြီးနောက်အပြောင်းအလဲများကိုရှာဖွေတွေ့ရှိရန်ဤဆောင်းပါးမှတစ်ဆင့်ကျွန်ုပ်တို့သည် Array_diff_ukey () function ကိုမည်သို့အသုံးပြုရမည်ကိုလေ့လာမည်။

1 ။ array_diff_ukey () function ကဘာလဲ?

Array_diff_ukey () သည် PHP တွင်ပါ 0 င်သော function တစ်ခုဖြစ်သည်။ လုပ်ဆောင်ချက်တစ်ခု၏အခြေခံ Syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 array_diff_ukey(array $array1, array $array2, callable $key_compare_func): array
  • $ array1 : ပထမ ဦး ဆုံးခင်းကျင်း။

  • $ array2 : ဒုတိယခင်းကျင်း။

  • $ key_Compare_funct : သော့ချက်နှစ်ခုအရွယ်အစားကိုနှိုင်းယှဉ်ရန်အသုံးပြုသောအသုံးပြုသူသတ်မှတ်ထားသော callback function ကို။

ဤလုပ်ဆောင်ချက်သည် ဒေါ်လာ array 1 တွင်ပါ 0 င်သောသော့များပါ 0 င်သည့်နေရာတစ်ခုကိုပြန်လည်ရောက်ရှိစေသော်လည်း ဒေါ်လာ array2 တွင်မပါ 0 င်ပါ။

2 ။ JSON decoding ပြီးနောက် Array keys ပြောင်းလဲမှုကို detect

JSOST သည်အောက်ပါအဆင့်များကိုဖြတ်သန်းပြီးနောက်ခင်းကျင်းပြီးနောက်ခင်းကျင်းမှု၏အဓိကပြောင်းလဲမှုများကိုရှာဖွေရန် array_diff_ukey () ကိုသုံးနိုင်သည်။ သင့်တွင် JSON ဒေတာနှစ်ခုရှိသည်ဆိုပါစို့။ သူတို့ decodded ပြီးနောက် Array keys မ်ားကပြောင်းလဲသွားမလားစစ်ဆေးချင်တယ်။

1 ။ JSON ဒေတာကို decode

ပထမ ဦး စွာကျွန်ုပ်တို့သည် JSON ဒေတာကို PHP ခင်းကျင်းမှုထဲသို့ကူးပြောင်းရန်လိုအပ်သည်။ ငါတို့မှာ JSON ဒေတာနှစ်ခုရှိတယ်ဆိုပါစို့။

 $json1 = '{"id": 1, "name": "John", "age": 30}';
$json2 = '{"id": 1, "name": "John", "address": "New York"}';

JSONS_Decode () မှတဆင့် PHP Array သို့၎င်းတို့ကိုဖြိုခွဲနိုင်သည်။

 $array1 = json_decode($json1, true);
$array2 = json_decode($json2, true);

2 ။ array key ပြောင်းလဲမှုများနှိုင်းယှဉ်

နောက်တစ်ခုက array_diff_ukey () ကိုသုံးပြီးဒီနှစ်ခု arrays ရဲ့သော့တွေကိုနှိုင်းယှဉ်ဖို့, သော့တွေထဲမှာကွဲပြားခြားနားမှုတွေကိုရှာဖွေတွေ့ရှိဖို့ကျွန်တော်တို့ကိုသုံးတယ်။

 $key_diff = array_diff_ukey($array1, $array2, 'strcasecmp');

ဤနေရာတွင် strcasecmp သည်သော့ချက်၏အဖြစ်အပျက်ကိုလျစ်လျူရှုထားသည့် Array keys များကိုနှိုင်းယှဉ်ရန်အသုံးပြုသော callback function ကိုအသုံးပြုသည်။ လိုအပ်သည့်သော့များကိုနှိုင်းယှဉ်ရန် Custom Callback လုပ်ဆောင်ချက်များကိုသင်သတ်မှတ်နိုင်သည်။

3 ။ ရလဒ်ခွဲခြမ်းစိတ်ဖြာခြင်း

ပြန်လာသော $ Key_Diff Array သည်ဗလာမဟုတ်လျှင် array key ကိုပြောင်းလဲသွားသည်ဟုဆိုလိုသည်။ ဒီလိုမှမဟုတ်ရင် array keys တွေကိုမပြောင်းလဲဘူး။ ပြောင်းလဲမှုသော့ကိုမှတ်တမ်းတင်ခြင်းကဲ့သို့သောခြားနားချက်ခင်းကျင်းမှုအပေါ် အခြေခံ. နောက်ထပ်လုပ်ငန်းစဉ်ကိုသင်ထပ်မံလုပ်ဆောင်နိုင်သည်။

 if (!empty($key_diff)) {
    echo "အောက်ပါသော့များသည် JSON ဒေတာအတွက်အပြောင်းအလဲများ:\n";
    print_r($key_diff);
} else {
    echo "JSON ဒေတာသော့မပြောင်းလဲပါဘူး。\n";
}

3 ။ အကျဉ်းချုပ်

array_diff_ukey () function ကိုမှတစ်ဆင့် JSON decode ပြီးနောက်တွင်အပြောင်းအလဲများကိုအလွယ်တကူရှာဖွေတွေ့ရှိနိုင်သည်။ ဤနည်းလမ်းကိုအမျိုးမျိုးသောအခြေအနေများနှင့်သက်ဆိုင်နိုင်သည်။

အထက်ဖော်ပြပါအချက်များသည် array_diff_ukey () function ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးသည်။ မင်းအတွက်အထောက်အကူဖြစ်လိမ့်မယ်လို့မျှော်လင့်ပါတယ်။