PHP တွင် array_diff_ukey function သည် Associative Array နှစ်ခု၏သော့များကိုနှိုင်းယှဉ်ထားပြီး Custom Key နှိုင်းယှဉ်လုပ်ဆောင်ချက်များအပေါ် အခြေခံ. ကွဲပြားခြားနားမှုများကိုရှာဖွေနိုင်သည့်အလွန်လက်တွေ့ကျသောကိရိယာတစ်ခုဖြစ်သည်။ ဒီ function ကိုမှတစ်ဆင့်ပထမ ဦး ဆုံးခင်းကျင်းမှုတွင်မည်သည့်သော့ချက်ရှိသနည်း။ သို့သော်ဒုတိယခင်းကျင်းတွင်မတည်ရှိပါ။ Associative Array တည်ဆောက်ပုံနှစ်ခုအကြားကွဲပြားခြားနားမှုများကိုနှိုင်းယှဉ်ရန်ဤလုပ်ဆောင်မှုကိုမည်သို့အသုံးပြုရမည်ကိုကျွန်ုပ်တို့တူးပါမည်။
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 တစ်ခုသို့ပြန်ပို့သည်။
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 တွင်မတည်ရှိပါ။ ထို့ကြောင့်ရလဒ်တွင်ပါဝင်သည်။
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 ကိုအသုံးပြုသည် ။
Array_diff_ukey function သည်ကွဲပြားခြားနားမှုများကို array keys နှင့်နှိုင်းယှဉ်လျှင်ကွဲပြားခြားနားမှုများပြုလုပ်ရန်လိုအပ်သည်။ ဥပမာအားဖြင့်:
အခြားခင်းကျင်းမှုတွင်မပေါ်ပါစေသောသော့များကိုရှာဖွေပါ ။ သော့များအပေါ် အခြေခံ. array နှစ်ခုကိုသင်နှိုင်းယှဉ်ရန်လိုအပ်သည့်အခါဤ function ကိုသုံးနိုင်သည်။
Custom စည်းမျဉ်းစည်းကမ်းများဖြင့်သော့များကိုနှိုင်းယှဉ်ကြည့်ပါ ။ အကယ်. သော့သည် string တစ်ခုသို့မဟုတ်နံပါတ်တစ်ခုဆိုပါစို့။
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 နှိုင်းယှဉ်လုပ်ဆောင်မှုများမှတစ်ဆင့်နှိုင်းယှဉ်ခြင်းလုပ်ငန်းစဉ်ကိုအလွန်ပြောင်းလဲစေပြီးအမှန်တကယ်လိုအပ်ချက်များနှင့်အညီလုပ်ဆောင်မှုအမျိုးမျိုးကိုအကောင်အထည်ဖော်နိုင်သည်။