လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> စစ်ဆေးမှုပတ်ဝန်းကျင်ရှိ input နှင့် output အခြေအနေများတွင် array_diff () ကို Simulate လုပ်ပါ

စစ်ဆေးမှုပတ်ဝန်းကျင်ရှိ input နှင့် output အခြေအနေများတွင် array_diff () ကို Simulate လုပ်ပါ

M66 2025-06-06

PHP တွင် Array_diff () သည်ကွဲပြားခြားနားသောခင်းကျင်းမှုနှင့်နှိုင်းယှဉ်ရန်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ကွဲပြားခြားနားသောအခြေအနေများတွင် Code ကိုမှန်ကန်စွာလုပ်ဆောင်နိုင်ရန်အတွက်စမ်းသပ်မှုပတ်ဝန်းကျင်ရှိ array_diff () ၏ထုတ် input_diff () ၏အဆင့်အမျိုးမျိုးကိုတုပရန်နှင့်စစ်ဆေးရန်လိုအပ်သည်။ ဤဆောင်းပါးသည်သင့်အားမည်သို့ထိထိရောက်ရောက်လုပ်ဆောင်ရမည်ကိုနားလည်ရန်တစ်ဆင့်အလိုက်အဆင့်ဆင့်သွားပါလိမ့်မည်။

1 ။ နိဒါန်း

array_diff () ၏ function ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -

 array array_diff(array $array, array ...$arrays)

ဤလုပ်ဆောင်ချက်သည်အခြား $ array များ၌မပေါ်ပါစေသော $ array များ ပါ 0 င်သောတန်ဖိုးများအားလုံးပါ 0 င်သည့်ခင်းကျင်းမှုကိုပြန်လည်ပေးလိမ့်မည်။

ဥပမာ -

 $a = ['apple', 'banana', 'cherry'];
$b = ['banana', 'grape'];
$result = array_diff($a, $b);
// ထုတ်လုပ်ခြင်း:['apple', 'cherry']

2 ။ အဘယ်ကြောင့်စမ်းသပ်?

Array_diff () သည် built-in function တစ်ခုဖြစ်သော်လည်းသင်အမူအကျင့်ကိုလုံးလုံးလျားလျားမှီခိုအားထားနိုင်သည်ဟုမဆိုလိုပါ။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျွန်ုပ်တို့သည်များသောအားဖြင့်ကြီးမားသောရှုပ်ထွေးသောအဆောက်အအုံများ, များစွာသောရှုထောင့်အမျိုးမျိုး, ရောနှောထားသောအမျိုးအစားများ,

  • အမျိုးအစားအမှားအယွင်းများကိုရှောင်ပါ

  • လုပ်ဆောင်ချက်အပြုအမူနယ်နိမိတ်ကိုနားလည်ပါ

  • စီးပွားရေးယုတ္တိဗေဒသည်တိကျသောအပြုအမူပေါ်တွင်မူတည်သည်ကိုစစ်ဆေးပါ

3 ။ စမ်းသပ်မှုပတ်ဝန်းကျင်အတွက်ပြင်ဆင်ပါ

အောက်ပါနည်းလမ်းနှစ်မျိုးကိုစမ်းသပ်ခြင်းပတ် 0 န်းကျင်တည်ဆောက်ရန်သင်အသုံးပြုနိုင်သည်။

1 ။ ဒေသခံဖွံ့ဖြိုးရေးပတ် 0 န်းကျင် (PHP> 7.4 ကိုအကြံပြုသည်)

အောက်ပါကိရိယာများဖြင့်၎င်းကိုလျင်မြန်စွာတည်ဆောက်နိုင်သည်။

  • xampp သို့မဟုတ် mamp

  • PHP Built-in ဆာဗာ:

 php -S localhost:8000

2 ။ အွန်လိုင်းစမ်းသပ်မှုပလက်ဖောင်း

ဥပမာအားဖြင့်, ယုတ္တိဗေဒကိုလျင်မြန်စွာအတည်ပြုရန် https://sandbox.m66.net/phip-test တွင် code snippets ကို run ပါ။

4 ။ မျိုးစုံစမ်းသပ်အခြေအနေများတုပ

နယ်နိမိတ်ဖြစ်စဉ်များမှအသုံးအများဆုံးအသုံးပြုမှုအမှုများမှလူတစ် ဦး အားဖြင့်ကျွန်ုပ်တို့စမ်းသပ်သည်။

1 ။ ရိုးရှင်းသော string ကိုနှိုင်းယှဉ်

 $a = ['red', 'green', 'blue'];
$b = ['green', 'yellow'];
$result = array_diff($a, $b);
print_r($result);
// 预期ထုတ်လုပ်ခြင်း:['red', 'blue']

2 ။ သော့ချက်အမည်များနှင့်အတူ arrays နှိုင်းယှဉ်

 $a = ['a' => 'apple', 'b' => 'banana'];
$b = ['x' => 'banana'];
$result = array_diff($a, $b);
print_r($result);
// 预期ထုတ်လုပ်ခြင်း:['a' => 'apple'],ကျေးဇူးပြု. မူရင်းသော့အမည်ကိုသိမ်းထားပါ

3 ။ တန်ဖိုးများကိုကြိုးနှင့်ရောစပ်ပါ

 $a = [1, '2', 3];
$b = ['1', 2];
$result = array_diff($a, $b);
print_r($result);
// ထုတ်လုပ်ခြင်း:ဖြစ်နိုင်စရာ [0 => 1, 2 => 3],ဘာဖြစ်လို့လဲဆိုတော့အဲဒါကိုနှိုင်းယှဉ်တဲ့အခါမှာတင်းကျပ်တဲ့အမျိုးအစားတစ်ခုပဲ

4 ။ Multiple Multiple Array သွင်းအားစုများ

 $a = ['php', 'js', 'python'];
$b = ['js'];
$c = ['python'];
$result = array_diff($a, $b, $c);
print_r($result);
// ထုတ်လုပ်ခြင်း:['php']

5 ။ အချည်းနှီးသောခင်းကျင်းစစ်ဆေးမှု

 $a = [];
$b = ['x', 'y'];
$result = array_diff($a, $b);
print_r($result);
// ထုတ်လုပ်ခြင်း:ဗလာခင်း []

6 ။ ထပ်တူတန်ဖိုးများနှင့်အတူခင်းကျင်း

 $a = ['apple', 'banana', 'apple'];
$b = ['banana'];
$result = array_diff($a, $b);
print_r($result);
// ထုတ်လုပ်ခြင်း:['apple', 'apple']

5 ။ အလိုအလျောက်စစ်ဆေးမှုများကိုရေးပါ (Phpunit ကို သုံး. )

အပြုအမူများကိုအလိုအလျောက်အတည်ပြုရန် Phpunit ကိုသုံးရန် PHPunit ကိုသုံးနိုင်သည်။

 use PHPUnit\Framework\TestCase;

class ArrayDiffTest extends TestCase
{
    public function testStringDiff()
    {
        $a = ['a', 'b', 'c'];
        $b = ['b'];
        $this->assertEquals(['a', 'c'], array_values(array_diff($a, $b)));
    }

    public function testMixedTypes()
    {
        $a = [1, '2', 3];
        $b = ['1', 2];
        $expected = [0 => 1, 2 => 3];
        $this->assertEquals($expected, array_diff($a, $b));
    }

    public function testEmptyArray()
    {
        $a = [];
        $b = ['x'];
        $this->assertEmpty(array_diff($a, $b));
    }
}

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

စမ်းသပ်မှုပတ် 0 န်းကျင်တွင်သွင်းအားစုအမျိုးအစားအမျိုးမျိုးကိုလှောင်ပြောင်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် array_diff () မည်သို့ပြုမူကြောင်းနက်နက်နဲနဲနားလည်နိုင်သည်။ ဤတက်ကြွသောစမ်းသပ်ခြင်းလုပ်ငန်းစဉ်သည်အလားအလာရှိသောပြ problems နာများကိုဖော်ထုတ်နိုင်ရုံသာမကခိုင်မာသည့်ကုဒ်ကိုလည်းကူညီနိုင်သည်။ အထူးသဖြင့်အကြီးစားစီမံကိန်းများအတွက်တည်ငြိမ်သောဒေတာဖွဲ့စည်းပုံနှင့်ယုံကြည်စိတ်ချရသောကွဲပြားခြားနားမှုလုပ်ဆောင်နိုင်စွမ်းစွမ်းရည်များသည်အချက်အလက်နှိုင်းယှဉ်ခြင်းနှင့်စစ်ဆေးခြင်းကဲ့သို့သောယုတ္တိဗေဒဆိုင်ရာယုတ္တိဗေဒအတွက်အခြေခံဖြစ်သည်။

သတိရပါ - စမ်းသပ်ခြင်းသည်အချိန်ဖြုန်းတီးခြင်းမဟုတ်သော်လည်းအနာဂတ်ကိုချုံ့ခြင်းအချိန်ကိုကယ်တင်နိုင်သည်။