လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_diff_assoc အတွက်စိတ်ကြိုက်နှိုင်းယှဉ်လုပ်ဆောင်မှုများကိုအသုံးပြုနိုင်ပါသလား။ (မဟုတ်ပါ, အခြားရွေးချယ်စရာအသေးစိတ်ရှင်းပြပါ)

array_diff_assoc အတွက်စိတ်ကြိုက်နှိုင်းယှဉ်လုပ်ဆောင်မှုများကိုအသုံးပြုနိုင်ပါသလား။ (မဟုတ်ပါ, အခြားရွေးချယ်စရာအသေးစိတ်ရှင်းပြပါ)

M66 2025-06-06

Array_diff_assoc () သည် PHP ၏ built-in နှိုင်းယှဉ်မှုယန္တရားကိုအခြေခံသည်ကိုအခြေခံသည်။ ၎င်းသည် PHP နှင့်နှိုင်းယှဉ်ခြင်းအော်ပရေတာကိုအသုံးပြုသည် ( == ) ကိုအသုံးပြုသည်။ ဤလုပ်ဆောင်ချက်သည် parameter ကိုစိတ်ကြိုက်နှိုင်းယှဉ်ခြင်း function ကိုဖြတ်သန်းရန်မထောက်ပံ့ပါ။ ထို့ကြောင့်၎င်းသည်သင်နှိုင်းယှဉ်ပုံကိုတိုက်ရိုက်မပြောင်းလဲနိုင်ပါ။

အထူးသဖြင့် array_diff_assoc () function ကိုအကောင်အထည်ဖော်မှု သည် callback function များကို ထောက်ပံ့ရန်ဒီဇိုင်းရေးဆွဲခြင်းမရှိပါ။ ၎င်းသည်ကျွန်ုပ်တို့၏စိတ်ကြိုက်နှိုင်းယှဉ်မှုယုတ္တိဗေဒကို array_diff_assoc () ကိုစိတ်ကြိုက်ပြင်ဆင်ရန်မဖြစ်နိုင်ပါက array တန်ဖိုးများကိုတိကျစွာစည်းမျဉ်းစည်းကမ်းများနှင့်နှိုင်းယှဉ်လျှင်သတ်သတ်မှတ်မှတ်စည်းမျဉ်းများကိုအသုံးပြုသည်။

php နှစ်ခု arrays နှိုင်းယှဉ်ဖို့စံနည်းလမ်း

ပုံမှန်အားဖြင့် array_diff_assoc () သည် ခင်းကျင်း၏သော့နှင့်တန်ဖိုးများအပေါ် အခြေခံ. စံနှိုင်းယှဉ်မှုများပြုလုပ်သည်။ အကယ်. Array နှစ်ခုသည်တူညီသောသော့ချက်ရှိလျှင်၎င်းတို့၏တန်ဖိုးများမှာမတူပါက, array_diff_assoc () ခြားနားချက်ကိုပြန်ပို့သည်။ ဥပမာအားဖြင့်:

 $array1 = [
    "a" => "apple",
    "b" => "banana",
    "c" => "cherry"
];

$array2 = [
    "a" => "apple",
    "b" => "berry",
    "c" => "cherry"
];

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

ထုတ်လုပ်မှု -

 Array
(
    [b] => banana
)

ဤဥပမာတွင် array_diff_assoc () သည် array နှစ်ခုအကြားခြားနားချက်ကိုရှာဖွေသည် - "B" နှင့်အတူတန်ဖိုးသည်ခင်းကျင်းမှုနှစ်ခုတွင်ကွဲပြားခြားနားသည်။

သို့သော်သင်သည်အချို့သောဓလေ့ထုံးစံများကိုတစ်နည်းနည်းဖြင့်နှိုင်းယှဉ်ခြင်း , အရာဝတ်ထုများကိုလျစ်လျူရှုခြင်း, အရာဝတ်ထုအချို့ကိုလျစ်လျူရှုခြင်း,

အခြားရွေးချယ်စရာ - စိတ်ကြိုက်နှိုင်းယှဉ် function ကိုအကောင်အထည်ဖော်မှု

Array_Diff_AsSoC () သည်စိတ်ကြိုက်နှိုင်းယှဉ်မှုများကိုမထောက်ပံ့နိုင်သော်လည်းအခြားနည်းများဖြင့်စိတ်ကြိုက်နှိုင်းယှဉ်သည့်ယုတ္တိဗေဒကိုကျွန်ုပ်တို့အကောင်အထည်ဖော်နိုင်သည်။ ဘုံဖြေရှင်းချက်တစ်ခုမှာ array_fileter () နှင့်စိတ်ကြိုက်နှိုင်းယှဉ်မှု function မှတဆင့်ခြားနားချက်နှိုင်းယှဉ်မှုကိုကိုယ်တိုင်ကိုယ်ကျအကောင်အထည်ဖော်ရန်ဖြစ်သည်။

array_diff_assoc () ကို စိတ်ကြိုက်နှိုင်းယှဉ်လုပ်ဆောင်မှုဖြင့်အစားထိုးခြင်း၏ဥပမာတစ်ခုဖြစ်သည်။

 function custom_compare($value1, $value2) {
    // ဥပမာအားဖြင့်,နှိုင်းယှဉ်မှုအတွက်အမှုကိုလျစ်လျူရှုပါ
    return strcasecmp($value1, $value2) !== 0;
}

function custom_array_diff_assoc($array1, $array2) {
    $result = [];

    foreach ($array1 as $key => $value1) {
        if (!array_key_exists($key, $array2) || custom_compare($value1, $array2[$key])) {
            $result[$key] = $value1;
        }
    }

    return $result;
}

$array1 = [
    "a" => "Apple",
    "b" => "banana",
    "c" => "Cherry"
];

$array2 = [
    "a" => "apple",
    "b" => "Banana",
    "c" => "Cherry"
];

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

ထုတ်လုပ်မှု -

 Array
(
    [a] => Apple
    [b] => banana
)

ဤဥပမာတွင်ကျွန်ုပ်တို့သည်နှိုင်းယှဉ်မှု၏အထက်နှင့်အောက်ပိုင်းအမှုတို့ကိုလျစ်လျူရှုရန် Custom_Compare () ဟုခေါ်သောစိတ်ကြိုက်နှိုင်းယှဉ်မှု function ကိုသတ်မှတ်သည်။ Custom_RARARY_DIFF_ASTIFT_DIFF_ASSOC () , ကျွန်ုပ်တို့သည်အဓိကကျသည့်သော့နှစ်ခုစလုံးတွင်တည်ရှိခြင်းရှိမရှိကို ဦး စွာစစ်ဆေးသည်။ အကယ်. ၎င်းတည်ရှိပါကတန်ဖိုးများသည်စိတ်ကြိုက်နှိုင်းယှဉ်မှု function မှတစ်ဆင့်တူညီသည်ကိုကျွန်ုပ်တို့ဆုံးဖြတ်နိုင်သည်။ အကယ်. တန်ဖိုးများကွဲပြားလျှင်, သော့ချက်တန်ဖိုးတွဲကိုရလဒ်ခင်းကျင်း၌ထည့်သွင်းထားသည်။

ဤနည်းလမ်းသည်ကျွန်ုပ်တို့အားပိုမိုပြောင်းလွယ်ပြင်လွယ်ပေးပြီးကျွန်ုပ်တို့၏လိုအပ်ချက်များနှင့်နှိုင်းယှဉ်နိုင်သည့်ယုတ္တိဗေဒကိုစိတ်ကြိုက်ပြုလုပ်နိုင်သည်။

အခြားဘုံအခြားရွေးချယ်စရာများ

နှိုင်းယှဉ်မှုယုတ္တိဗေဒကိုကိုယ်တိုင်ကိုယ်ကျအကောင်အထည်ဖော်ရန်အပြင် array_udiff_assoc () ကဲ့သို့သောအခြား built-in functions များကိုလည်း အသုံးပြု. array_udiff_assoc () ကိုအသုံးပြုသည်။ Array_udiff_assoc () function ၏နိယာမ () function သည် array_diff_assoc () နှင့်ဆင်တူသော်လည်းနှိုင်းယှဉ်မှုများပြုလုပ်ရန်စိတ်ကြိုက်ခေါ်ဆိုမှု function ကိုလက်ခံသည်။

နမူနာကုဒ်:

 function custom_compare($value1, $value2) {
    return strcasecmp($value1, $value2);
}

$array1 = [
    "a" => "Apple",
    "b" => "banana",
    "c" => "Cherry"
];

$array2 = [
    "a" => "apple",
    "b" => "Banana",
    "c" => "Cherry"
];

$result = array_udiff_assoc($array1, $array2, 'custom_compare');
print_r($result);

ထုတ်လုပ်မှု -

 Array
(
    [a] => Apple
    [b] => banana
)

ဤဥပမာတွင် array_udiff_assoc () function သည် custom_cragpare () ကို အသုံးပြုသည်။