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

PHP တွင် Array_diff () နှင့် array_intebintingsect () အကြားခြားနားချက်ကဘာလဲ။ ထိရောက်မှုတိုးတက်စေရန်သူတို့ကိုပေါင်းစပ်အသုံးပြုနည်း

M66 2025-05-14

PHP, array_diff () နှင့် array_intebint () () array_intebintsect () သည် array နှိုင်းယှဉ်ခြင်းနှင့်ခြားနားချက်တွက်ချက်မှုတွင်အရေးကြီးသောအခန်းကဏ် play မှပါ 0 င်သည့်အလွန်အမင်းခင်းကျင်းသောစစ်ဆင်ရေးနှစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်ချက်နှစ်ခု၏လုပ်ဆောင်ချက်များကိုကွဲပြားခြားနားသည်, သို့သော်တစ်ခါတစ်ရံတွင်၎င်းတို့ကိုကုဒ်၏ထိရောက်မှုကိုတိုးတက်စေရန်ပေါင်းစပ်။ အသုံးပြုနိုင်သည်။ ဤဆောင်းပါးသည်၎င်းတို့၏ကွဲပြားခြားနားမှုများကိုအသေးစိတ်ရှင်းပြပြီး၎င်းတို့ကိုပေါင်းစပ်ရန်နည်းလမ်းတစ်ခုပေးလိမ့်မည်။

1 ။ array_diff () function ကို

Array_diff () သည်ပထမခင်းကျင်းမှုတွင်ပါ 0 င်သော acray များပါ 0 င်သော array တစ်ခုသို့ပြန်ပို့ရန်အသုံးပြုသည်။ ရိုးရိုးလေးပြောရလျှင် Array_diff () သည် ခင်းကျင်းမှု၏ "ခြားနားချက်အစု" ကိုတွက်ချက်သည်။

သဒ္ဒါ:

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

ဥပမာ -

 $array1 = [1, 2, 3, 4];
$array2 = [3, 4, 5, 6];
$result = array_diff($array1, $array2);
print_r($result);

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

 Array
(
    [0] => 1
    [1] => 2
)

အထက်ပါဥပမာတွင် array_diff () သည် array 1 တွင် element များကိုပြန်ပို့သော်လည်း array2 , i.e. 1 နှင့် 2 တွင်မပါ 0 င်ပါ။

2 ။ array_intebinct () function ကို

Array_intebyect () နှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသော array များရှိဒြပ်စင်များပါ 0 င်သော array ကိုပြန်ပို့ရန်အသုံးပြုသည်။ ၎င်းသည်ခင်းကျင်းမှု၏ "လမ်းဆုံ" ကိုတွက်ချက်သည်။

သဒ္ဒါ:

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

ဥပမာ -

 $array1 = [1, 2, 3, 4];
$array2 = [3, 4, 5, 6];
$result = array_intersect($array1, $array2);
print_r($result);

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

 Array
(
    [2] => 3
    [3] => 4
)

အထက်ပါဥပမာတွင် array_intesect () array1 နှင့် array2 နှစ်ခုလုံးတွင်တည်ရှိသောဒြပ်စင်များသို့ပြန်ပို့သည်။

3 ။ array_diff () နှင့် array_intebintect အကြားခြားနားချက် ()

ဒီလုပ်ဆောင်ချက်နှစ်ခုအကြားကွဲပြားခြားနားမှုကိုအကျဉ်းချုပ်ကြစို့။

  • Array_diff () - ပထမခင်းကျင်းရေးထားတဲ့အချက်များပါ 0 င်သော array တစ်ခုနှင့်အခြားခင်းကျင်းမှုတွင်ပါ 0 င်သည်။ တစ်နည်းပြောရလျှင်၎င်းသည် "ခြားနားချက်ကိုအစုံ" ကိုတွက်ချက်သည်။

  • array_intebinct () : နှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသော arrays များရှိဒြပ်စင်အားလုံးပါ 0 င်သောခင်းကျင်းမှုတစ်ခုသို့ပြန်ပို့သည်။ ဒါဟာ "လမ်းဆုံ" တွက်ချက်သည်။

ရလဒ်အနေဖြင့် array_diff () သည်အခြားခင်းကျင်းမှု () သည်အခြားခင်းကျင်းမှုများကိုဖယ်ထုတ်ပြီး,

4 ။ array_diff () နှင့် array_intelect () array_intelect () () array_intesect () ကိုအသုံးပြုနည်း။

တစ်ခါတစ်ရံတွင်ရှုပ်ထွေးသော arrays များထုတ်လုပ်သည့်အခါတစ်ချိန်တည်းတွင်ခြားနားချက်နှင့်လမ်းဆုံကိုတစ်ချိန်တည်းရရန်လိုအပ်သည်။ ဤအချိန်တွင် array_diff () နှင့် array_intebintentsect () ကို ထည့်သွင်းစဉ်းစားပါ။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်မလိုချင်တဲ့ဒြပ်စင်တွေကိုဖယ်ထုတ်ပြီးလမ်းဆုံမှာရှိတဲ့ဘုံဒြပ်စင်တွေကိုလည်းရှာမယ်ဆိုရင်ဒီလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်လိုက်ရင်တစ်ဆင့်မှာလုပ်နိုင်ပါတယ်။

ဥပမာ -

ကျွန်ုပ်တို့တွင် array နှစ်ခုရှိသည်ဆိုပါစို့, တစ်ခုမှာအသုံးပြုသူတစ် ဦး ၏စိတ်ဝင်စားဖွယ်စာရင်းမှာသုံးစွဲသူစာရင်းဖြစ်ပြီးအခြားအသုံးပြုသူစာရင်းဖြစ်သည်။ B. တွင်ပါ 0 င်သောအကျိုးစီးပွားကိုရှာဖွေရန်နှင့်ခရင်မျှဝေခြင်း (ကွဲပြားခြားနားသော) အကျိုးစီးပွားကိုရှာဖွေရန်လိုအပ်သည်။

 $userA = ['music', 'sports', 'travel', 'reading'];
$userB = ['sports', 'travel', 'photography'];

// ရယူAရှိBစိတ်မချစရာမရှိပါ
$diff = array_diff($userA, $userB);
print_r($diff); // ထုတ်လုပ်ခြင်း: Array ( [0] => music [3] => reading )

// ရယူAနှင့်Bဘုံအကျိုးစီးပွား
$intersect = array_intersect($userA, $userB);
print_r($intersect); // ထုတ်လုပ်ခြင်း: Array ( [1] => sports [2] => travel )

ဤချဉ်းကပ်မှုကကျွန်ုပ်တို့ကိုသီးခြားခွဲထားရန်နှင့်ကွဲပြားခြားနားသောအပိုင်းများကိုတူညီသောအစိတ်အပိုင်းများနှင့်နှိုင်းယှဉ်နိုင်သည်။

5 ။ URL အပြောင်းအလဲနဲ့အတွက်လျှောက်လွှာ

တခါတရံတွင်ကျွန်ုပ်တို့သည် URL စာရင်းကိုလုပ်ဆောင်ရန်နှင့်သက်ဆိုင်ရာတရားစီရင်မှုများကိုပြုလုပ်ရန်လိုအပ်သည်။ array_diff () နှင့် array_intebinct () application scario တွင်လည်းအသုံးပြုနိုင်သည်။ ဥပမာအားဖြင့်, အချို့သော URL များသည်သတ်မှတ်ထားသောဒိုမိန်းအမည်အောက်တွင်မရှိကြောင်း,

 $urlsA = ['http://example.com', 'http://m66.net/page1', 'http://m66.net/page2'];
$urlsB = ['http://m66.net/page1', 'http://m66.net/page2', 'http://example.com/page3'];

// ရယူ在Aအတွက်ဒါပေမယ့်မBအိမ်တွင်းURL
$diffUrls = array_diff($urlsA, $urlsB);
print_r($diffUrls); // ထုတ်လုပ်ခြင်း: Array ( [0] => http://example.com )

// ရယူAနှင့်Bအများအပြားရှိတတ်သောURL
$intersectUrls = array_intersect($urlsA, $urlsB);
print_r($intersectUrls); // ထုတ်လုပ်ခြင်း: Array ( [1] => http://m66.net/page1 [2] => http://m66.net/page2 )

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

  • Array_diff () နှင့် array_intebintectsect () သည် arrays များကိုပြုပြင်သည့်အခါအလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်များဖြစ်ပြီးခြားနားချက်နှင့်လမ်းဆုံကိုအသီးသီးတွက်ချက်ရန်အသုံးပြုသည်။

  • ဤလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်အထူးသဖြင့်ကွဲပြားခြားနားသောအစိတ်အပိုင်းများနှင့်တူညီသောအစိတ်အပိုင်းများကိုရယူရန်လိုအပ်သည့်အခါတွင် array အချက်အလက်များကိုပိုမိုထိရောက်စွာလုပ်ဆောင်နိုင်ကြသည်။

  • အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်အထူးသဖြင့် URLs များ, အသုံးပြုသူအချက်အလက်များနှင့်ဆက်ဆံရာတွင်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုဆင်ခြင်တုံတရားအသုံးပြုခြင်းသည်ကုဒ်၏စာဖတ်နိုင်မှုနှင့်လုပ်ဆောင်မှုကိုတိုးတက်စေနိုင်သည်။