PHP တွင် Array_diff () သည်အလွန်အသုံးဝင်သောလုပ်ဆောင်မှုတစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်မှုကိုမကြာခဏမလိုချင်တဲ့ဒြပ်စင်အချို့ကိုခင်းကျင်းမှုတစ်ခုမှဖယ်ရှားခြင်းသို့မဟုတ်အရေးယူမှုများအကြားကွဲပြားခြားနားသောလုပ်ငန်းများလုပ်ဆောင်ခြင်းကိုပြုလုပ်သောအခြေအနေတွင်အသုံးပြုသည်။ ယနေ့, array_diff () function ကိုအသုံးပြုပြီးတိကျတဲ့ element တွေကိုအလွယ်တကူဖယ်ထုတ်နိုင်ပုံကိုလေ့လာကြပါစို့။
array_diff () function ကိုနှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသော array များကိုနှိုင်းယှဉ်ရန်, ပထမခင်းကျင်းမှုတွင်တည်ရှိနေသောတန်ဖိုးများအားလုံးပါ 0 င်သည့်တန်ဖိုးများကိုပြန်လည်ထည့်သွင်းရန်အသုံးပြုသည်။ ရိုးရိုးလေးပြောရလျှင်၎င်းသည်ခင်းကျင်းမှုနှင့်အခြား array များအကြားခြားနားချက်ကိုရှာဖွေရန်ကူညီနိုင်သည်။
လုပ်ဆောင်ချက်တစ်ခု၏အခြေခံ Syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array_diff(array $array1, array $array2, array ...$arrays): array
$ array1 : နှိုင်းယှဉ်ခံရဖို့ပထမ ဦး ဆုံးခင်းကျင်း။
$ array2, ... $ arrays : $ array1 နှင့်နှိုင်းယှဉ်ဖို့အသုံးပြုမည့် array တစ်ခုသို့မဟုတ်တစ်ခုထက်ပိုသော array များ။
ကျွန်ုပ်တို့တွင်ဒြပ်စင်များစွာနှင့်အတူခင်းကျင်းထားသည့်ဆိုပါစို့။ ဥပမာအားဖြင့်, ကျွန်ုပ်တို့တွင်စျေးဝယ်ခြင်းလှည်းများစာရင်းတွင် 0 င်ရောက်ခြင်းစာရင်းရှိသည်ဆိုပါစို့။ ဒီ function ကိုအလွယ်တကူအကောင်အထည်ဖော်ရန်ကျွန်ုပ်တို့ array_diff () ကို သုံးနိုင်သည်။
<?php
// မူရင်းခင်းကျင်း:စျေးဝယ်လှည်းရှိပစ္စည်းများစာရင်း
$cartItems = ["apple", "banana", "orange", "grape", "pineapple"];
// ကျနော်တို့ဖယ်ထုတ်ချင်သောပစ္စည်းများ၏ခင်းကျင်း:ပစ္စည်းများထွက်ရောင်းချ
$soldOutItems = ["banana", "grape"];
// အသုံးပြု array_diff() 函数排除ပစ္စည်းများထွက်ရောင်းချ
$availableItems = array_diff($cartItems, $soldOutItems);
// ဖယ်ထုတ်ထားထုတ်ကုန်စာရင်းကိုပုံနှိပ်ပါ
print_r($availableItems);
?>
Array
(
[0] => apple
[2] => orange
[4] => pineapple
)
ဤဥပမာတွင် array_diff () function သည် cartitems ခင်းကျင်းမှု နှင့်အတူ cartitems array နှင့်နှိုင်းယှဉ်ပါက စစ်ကြောပိတ်ဆို့မှု အသစ်များပါ 0 င်သည့် array အသစ်တစ်ခုကိုပြန်လည်ရယူသည်။
Indexing ပြ problem နာ : Array_diff () သည် မူလခင်းကျင်းမှုတွင်အဓိကအကြောင်းရင်းများကိုဆက်လက်ထိန်းသိမ်းထားမည်။ အကယ်. သင်သည် Array ကိုပြန်လည်ညွှန်းကိန်းရန်လိုအပ်ပါကသင် array_values () function ကိုသုံးနိုင်သည်။
$availableItems = array_values(array_diff($cartItems, $soldOutItems));
အမျိုးအစားနှိုင်းယှဉ်ချက် - array_diff () သည် တင်းကျပ်သောနှိုင်းယှဉ်ချက်များကိုအသုံးပြုသည်။ ဆိုလိုသည်မှာ၎င်းသည်ဒေတာအမျိုးအစားများကိုခွဲခြားသည်။ array1 တွင် string တစ်ခုနှင့် integer 1 တွင် array2 တွင် 1 "1 တွင် 1" 1 တွင်ကွဲပြားခြားနားသော element များအဖြစ်သတ်မှတ်လိမ့်မည်။
သင့်တွင် URLs များစွာရှိသည်ဟုဆိုပါစို့။ သင်ဤအရာကို array_diff () function ကိုအလွယ်တကူအောင်မြင်နိုင်သည်။ ဤတွင် URL ဥပမာတစ်ခုကိုအသုံးပြုသောကုဒ်တစ်ခုရှိသည်။
<?php
// မူရင်းဖြစ်သော URL အခင်းအကျင်း
$urls = [
"https://www.example.com/page1",
"https://www.example.com/page2",
"https://www.example.com/page3",
"https://www.example.com/page4"
];
// ဖယ်ထုတ်ထားခံရဖို့လိုအပ်ပါတယ် URL အခင်းအကျင်း
$urlsToExclude = [
"https://www.example.com/page2",
"https://www.example.com/page4"
];
// အသုံးပြု array_diff() တိကျတဲ့ဖယ်ထုတ်ပါ URL
$filteredUrls = array_diff($urls, $urlsToExclude);
// ပြန်လည်စစ်ဆေးကြည့်ရှု URL ဒိုမိန်းအမည်ဖြစ်သည် m66.net
$updatedUrls = array_map(function ($url) {
return preg_replace('/https:\/\/www\.[a-z]+\.[a-z]+/', 'https://m66.net', $url);
}, $filteredUrls);
// ပုံနှိပ်ထုတ်ဝေခြင်း URL စာရင်း
print_r($updatedUrls);
?>
Array
(
[0] => https://m66.net/page1
[2] => https://m66.net/page3
)
ဤဥပမာမှတစ်ဆင့်ကျွန်ုပ်တို့သည်မလိုလားအပ်သော URL များကိုဖယ်ထုတ်ရုံသာမက URL ၏ domain name ကို preg_replace () function မှတဆင့် M66.net သို့ပြောင်းပါ။
PHP ၏ array_diff () function ကိုအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် array မှတိကျသောဒြပ်စင်များကိုအလွယ်တကူဖယ်ထုတ်နိုင်သည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဤနည်းလမ်းကိုမလိုအပ်သောအချက်အလက်များကိုစစ်ထုတ်ခြင်း, မိတ္တူပွားများကိုဖယ်ရှားခြင်းစသည်တို့ကိုအသုံးပြုခြင်းကဲ့သို့သောဖြစ်နိုင်ချေအမျိုးမျိုးကိုအသုံးပြုနိုင်သည် ။