လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP ၏ Array_diff_ukey function ကို အသုံးပြု. တွဲဖက်ခင်းတွဲမှုနှစ်ခုအကြားကွဲပြားခြားနားမှုများကိုမည်သို့နှိုင်းယှဉ်မည်နည်း။

PHP ၏ Array_diff_ukey function ကို အသုံးပြု. တွဲဖက်ခင်းတွဲမှုနှစ်ခုအကြားကွဲပြားခြားနားမှုများကိုမည်သို့နှိုင်းယှဉ်မည်နည်း။

M66 2025-06-15

PHP တွင် array_diff_ukey function သည် Associative Array နှစ်ခု၏သော့များကိုနှိုင်းယှဉ်ထားပြီး Custom Key နှိုင်းယှဉ်လုပ်ဆောင်ချက်များအပေါ် အခြေခံ. ကွဲပြားခြားနားမှုများကိုရှာဖွေနိုင်သည့်အလွန်လက်တွေ့ကျသောကိရိယာတစ်ခုဖြစ်သည်။ ဒီ function ကိုမှတစ်ဆင့်ပထမ ဦး ဆုံးခင်းကျင်းမှုတွင်မည်သည့်သော့ချက်ရှိသနည်း။ သို့သော်ဒုတိယခင်းကျင်းတွင်မတည်ရှိပါ။ Associative Array တည်ဆောက်ပုံနှစ်ခုအကြားကွဲပြားခြားနားမှုများကိုနှိုင်းယှဉ်ရန်ဤလုပ်ဆောင်မှုကိုမည်သို့အသုံးပြုရမည်ကိုကျွန်ုပ်တို့တူးပါမည်။

1 ။ array_diff_ukey function ကို၏အခြေခံ syntax

 array_diff_ukey(array $array1, array $array2, callable $key_compare_func): array

parameter သည်ဖော်ပြချက် :

  • $ array1 : နှိုင်းယှဉ်မှုအတွက်စံသတ်မှတ်ချက်အဖြစ်ပထမ ဦး ဆုံးခင်းကျင်း။

  • $ array2 : ပထမ ဦး ဆုံးခင်းကျင်းနှင့်နှိုင်းယှဉ်ပါကဒုတိယ array ။

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

    • 0 ထက်လျော့နည်းဆိုလိုသည်မှာပထမ ဦး ဆုံးသော့ချက်သည်ဒုတိယသော့ချက်ထက်နည်းသည်ဟုဆိုလိုသည်။

    • 0 ညီမျှသောနည်းလမ်းနှစ်မျိုးသည်တန်းတူဖြစ်သည်ဟုဆိုလိုသည်။

    • 0 ထက်ကြီးသည်မှာပထမ ဦး ဆုံးသော့သည်ဒုတိယသော့ချက်ထက်သာသည်။

Value ကိုပြန်သွားပါ

$ array 1 ရှိ key-value အတွဲများပါ 0 င်သည့် array တစ်ခုသို့ပြန်ပို့သည်။

2 ။ ဥပမာ - နှစ်ခု arrys နှစ်ခုအကြားအဓိကကွဲပြားခြားနားမှုနှိုင်းယှဉ်

array_diff_ukey ကို မည်သို့အသုံးပြုရမည်ကိုကြည့်ကြပါစို့။

 <?php
$array1 = [
    "apple" => "red",
    "banana" => "yellow",
    "cherry" => "red",
    "grape" => "purple"
];

$array2 = [
    "banana" => "yellow",
    "cherry" => "red",
    "melon" => "green"
];

// Custom Key နှိုင်းယှဉ် function ကို
$key_compare_func = function($key1, $key2) {
    return strcmp($key1, $key2);  // string ကိုအသုံးပြုပြီးနှစ်ခုသော့နှိုင်းယှဉ်
};

// နှစ်ခု arrays အကြားအဓိကကွဲပြားခြားနားမှုနှိုင်းယှဉ်
$result = array_diff_ukey($array1, $array2, $key_compare_func);

print_r($result);
?>

ရလဒ်ရလဒ် -

 Array
(
    [apple] => red
    [grape] => purple
)

ဤဥပမာတွင် array_diff_ukey သည် ဒေါ်လာ array1 နှင့် $ array2 ရှိသော့များကိုဒေါ်လာ array (2) ခုနှင့်နှိုင်းယှဉ်လျှင် ဒေါ်လာ array တွင်တည်ရှိခဲ့သော်လည်း ဒေါ်လာ array2 တွင်မပါ 0 င်ပါ။ သင်မြင်သည့်အတိုင်း "Apple" နှင့်စပျစ်သီး "နှင့်" စပျစ်သီး "သည် ဒေါ်လာ array2 တွင်မတည်ရှိပါ။ ထို့ကြောင့်ရလဒ်တွင်ပါဝင်သည်။

3 ။ ထုံးစံ key နှိုင်းယှဉ် function ကို

Array_Diff_ukey function ၏အစွမ်းထက်သောအင်္ဂါရပ်တစ်ခုမှာ၎င်းသည်သော့ချက်များကို Custom Key နှိုင်းယှဉ်လုပ်ဆောင်မှုများမှတစ်ဆင့်နှိုင်းယှဉ်ရန်မည်သို့နှိုင်းယှဉ်နိုင်သည်။ အထက်ပါဥပမာတွင် strcmp () string နှိုင်းယှဉ်မှုအတွက် STRCMP () ကို အသုံးပြုခဲ့သည်။

ဤတွင်နံပါတ်အရွယ်အစားနှိုင်းယှဉ်ချက်သော့ကို အသုံးပြု. အခြားဥပမာတစ်ခုမှာ -

 <?php
$array1 = [
    1 => "one",
    2 => "two",
    3 => "three",
    5 => "five"
];

$array2 = [
    2 => "two",
    3 => "three",
    4 => "four"
];

// Custom Key နှိုင်းယှဉ် function ကို
$key_compare_func = function($key1, $key2) {
    return $key1 - $key2;  // နံပါတ်အရွယ်အစားနှင့်နှိုင်းယှဉ်ပါ
};

// နှစ်ခု arrays အကြားအဓိကကွဲပြားခြားနားမှုနှိုင်းယှဉ်
$result = array_diff_ukey($array1, $array2, $key_compare_func);

print_r($result);
?>

ရလဒ်ရလဒ် -

 Array
(
    [1] => one
    [5] => five
)

ဥပမာတွင် array_diff_ukey သည် သော့များကိုနှိုင်းယှဉ်ရန်ဂဏန်းနှိုင်းယှဉ်ခြင်း function ကိုအသုံးပြုသည်

4 ။ array_diff_ukey function ကိုသုံးပြီးအခြေအနေများ

Array_diff_ukey function သည်ကွဲပြားခြားနားမှုများကို array keys နှင့်နှိုင်းယှဉ်လျှင်ကွဲပြားခြားနားမှုများပြုလုပ်ရန်လိုအပ်သည်။ ဥပမာအားဖြင့်:

  • အခြားခင်းကျင်းမှုတွင်မပေါ်ပါစေသောသော့များကိုရှာဖွေပါ ။ သော့များအပေါ် အခြေခံ. array နှစ်ခုကိုသင်နှိုင်းယှဉ်ရန်လိုအပ်သည့်အခါဤ function ကိုသုံးနိုင်သည်။

  • Custom စည်းမျဉ်းစည်းကမ်းများဖြင့်သော့များကိုနှိုင်းယှဉ်ကြည့်ပါ ။ အကယ်. သော့သည် string တစ်ခုသို့မဟုတ်နံပါတ်တစ်ခုဆိုပါစို့။

5 ။ ဥပမာအားဖြင့် URL ပြုပြင်ခြင်း၏ဖော်ပြချက်

URL များပါ 0 င်သည့်အချက်အလက်များကိုထုတ်ယူသောအခါ array keys များကိုနှိုင်းယှဉ်ရန်လိုအပ်ကြောင်းနှင့် M66.net ရှိ domain name ကိုအစားထိုးလိုသည်ကိုသင်ယူဆသည်။

 <?php
$array1 = [
    "https://www.example1.com" => "site1",
    "https://www.example2.com" => "site2"
];

$array2 = [
    "https://www.example2.com" => "site2",
    "https://www.example3.com" => "site3"
];

// Custom Key နှိုင်းယှဉ် function ကို,ပြန်လည်နေရာချ URL ဒိုမိန်းအမည်
$key_compare_func = function($key1, $key2) {
    $key1 = preg_replace('/^https?:\/\/([^\/]+)(.*)$/', 'https://m66.net$2', $key1);
    $key2 = preg_replace('/^https?:\/\/([^\/]+)(.*)$/', 'https://m66.net$2', $key2);
    return strcmp($key1, $key2);  // ပြုပြင်ထားသောနှိုင်းယှဉ် URL
};

// နှစ်ခု arrays အကြားအဓိကကွဲပြားခြားနားမှုနှိုင်းယှဉ်
$result = array_diff_ukey($array1, $array2, $key_compare_func);

print_r($result);
?>

ဤဥပမာတွင် URL အမည်ရှိ domain name ကို m66.net နှင့် M66.net နှင့် M66.NET နှင့်အစားထိုး။ နှိုင်းယှဉ်ကြည့်ပါ။ ဤချဉ်းကပ်မှုသည်ကွဲပြားခြားနားသောလမ်းကြောင်းများနှင့်ကွဲပြားခြားနားသောဒိုမိန်းအမည်များသို့မဟုတ် URL နှိုင်းယှဉ်မှုများရှိသည့်အခြေအနေများသို့မဟုတ် URL နှိုင်းယှဉ်မှုများရှိသည့်အခြေအနေများအတွက်အကောင်းဆုံးဖြစ်သည်။

အထက်ဖော်ပြပါအချက်များမှာ Selfiative ArraiFire (2) ခုအကြားကွဲပြားခြားနားမှုများကိုနှိုင်းယှဉ်ရန် PHP ၏ Array_diff_ukey function ကိုမည်သို့အသုံးပြုရမည်ကိုလက်တွေ့ကျသောဥပမာများဖြစ်သည်။ Custom Key Key နှိုင်းယှဉ်လုပ်ဆောင်မှုများမှတစ်ဆင့်နှိုင်းယှဉ်ခြင်းလုပ်ငန်းစဉ်ကိုအလွန်ပြောင်းလဲစေပြီးအမှန်တကယ်လိုအပ်ချက်များနှင့်အညီလုပ်ဆောင်မှုအမျိုးမျိုးကိုအကောင်အထည်ဖော်နိုင်သည်။