လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_diff_key () အချည်းနှီးသောခင်းကျင်းမှုထဲသို့ကူးပြောင်းမည့်အခါပြန်လာမည်နည်း။

array_diff_key () အချည်းနှီးသောခင်းကျင်းမှုထဲသို့ကူးပြောင်းမည့်အခါပြန်လာမည်နည်း။

M66 2025-06-06

PHP တွင် array_diff_key () function ကိုနှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသော array များနှင့်နှိုင်းယှဉ်ရန်, ၎င်းကိုအောက်ပါပုံစံတွင်အသုံးပြုသည်။

 array_diff_key(array $array1, array $array2, array ...$arrays): array

ဤလုပ်ငန်းဆောင်တာကြောင့်ရရှိသောရလဒ်မှာ - ပထမခင်းကျင်းမှုရှိသော့ချက်များသည်အခြားခင်းကျင်းမှုတွင်မပေါ်ပါ ။ ဆိုလိုသည်မှာ၎င်းသည်အခြားခင်းကျင်းမှုများတွင်သော့မရှိသေးပါကရလဒ်တွင်ပေါ်လာလိမ့်မည်။

အကယ်. ဗလာကျင်းသောခင်းကျင်းမှုထဲသို့ 0 င်ပါကလုပ်ဆောင်မှု၏အပြုအမူသည်အထူးဖြစ်စဉ်များကိုဖြစ်ပေါ်စေလိမ့်မည်။ အချည်းနှီးသောခင်းကျင်းမှုတစ်ခုတွင်ဖြတ်သန်းသောအခါမည်သည့်ပြန်လာသောတန်ဖိုးရှိ arraiff_yiff_key () မည်သည့်နေရာတွင်ရှိသည်ကိုဆွေးနွေးကြပါစို့။

နမူနာကုဒ်

 $array1 = ["a" => 1, "b" => 2, "c" => 3];
$array2 = [];

$result = array_diff_key($array1, $array2);
print_r($result);

Execution ရလဒ်များ

 Array
(
    [a] => 1
    [b] => 2
    [c] => 3
)

ရှင်းလင်းဖေါ်ပြ

ဒုတိယ ARRAY $ array2 သည်အချည်းနှီးသောခင်းကျင်းမှုတစ်ခုဖြစ်သော array_diff_ey () သည် ပထမဆုံးခင်းကျင်းသောပထမ array 1 array1 ကို တိုက်ရိုက်ပြန်ပို့လိမ့်မည်။ အကြောင်းပြချက်များမှာအောက်ပါအတိုင်းဖြစ်သည် -

  1. Array_Diff_Key () ၏နိယာမ () သော့ချက်ကွဲပြားမှုအပေါ်အခြေခံပြီးခင်းကျင်းရန် array ကိုပြန်လာရန်ဖြစ်သည်။

  2. ဒုတိယခင်းကျင်းသည်အချည်းနှီးဖြစ်လျှင်, ပထမနေရာရှိသော့ချက်များနှင့်နှိုင်းယှဉ်ရန်သော့မရှိပါ။ ထို့ကြောင့်ပထမခင်းကျင်းမှုရှိသော့ချက်များကိုဒုတိယခင်းကျင်းတွင်မတွေ့ရပါ။

  3. array_diff_ey () သည် ပထမဆုံးခင်းကျင်းမှု၏အဓိကခင်းကျင်းမှုအတွဲအားလုံးကိုပြန်ပို့ပေးလိမ့်မည်။

ဒီဥပမာကနေဒုတိယခင်းကျင်းမှုကအချည်းနှီးဖြစ်မယ်ဆိုရင် array_diff_ey () ဟာ နှိုင်းယှဉ်မှုတွေမရှိတော့ဘူးဆိုတာကိုတွေ့နိုင်တယ်။

အခြားအခြေအနေများ

အရေးပါသောအရာများစွာကိုပြုလုပ်ပါက array_diff_key () ၏အပြုအမူသည်အခြားခင်းကျင်းမှုတွင်မရှိသောပထမခင်းကျင်းမှု၏သော့များကိုပြန်လည်ထည့်သွင်းထားဆဲဖြစ်သည်။ ဥပမာအားဖြင့်:

 $array1 = ["a" => 1, "b" => 2, "c" => 3];
$array2 = [];
$array3 = ["a" => 100];

$result = array_diff_key($array1, $array2, $array3);
print_r($result);

Execution ရလဒ်များ -

 Array
(
    [b] => 2
    [c] => 3
)

ဤဥပမာတွင်ပထမခင်းကျင်းရေး array -array- A "တွင်" a "သည်တတိယ ARRAY $ array3 တွင်ရှိသည်။ ထို့ကြောင့်" A "သည်ပြန်လာရလဒ်တွင်မပေါ်ပါ။ နှင့် "ခ" နှင့် "C" ကို $ array3 တွင်မတွေ့ရပါ, ဒါကြောင့်သူတို့ကိုထိန်းသိမ်းထားလိမ့်မည်။

အကျဉ်းချုပ်

  • array_diff_key () သို့ဗလာကျင်းနေသောခင်းကျင်းမှုကိုဖြတ်သန်းသွားသောအခါပထမခင်းကျင်းမှု၏အစိတ်အပိုင်းအားလုံးကိုပြန်ပို့လိမ့်မည်။

  • အချည်းနှီးသောခင်းကျင်းမှုတစ်ခုသည်အခြား array များနှင့်နှိုင်းယှဉ်ပါကသော့မရှိပါ,

  • အရေးပါသော arrays တွေအများကြီးဖြတ်သန်းသွားရင် array_diff_key () ရဲ့အပြုအမူတွေကရလဒ်ကိုအမှန်တကယ်နှိုင်းယှဉ်ထားသောခင်းကျင်းမှုအပေါ် အခြေခံ. ရလဒ်ကိုပြန်လည်ရောက်ရှိလာလိမ့်မည်။