လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Multi- ရှုထောင်ခင်းကျင်းရေးအတွက်သော့များကို filter လုပ်ရန် array_diff () array_keys () array_keys () array_keys () ကိုသုံးပါ

Multi- ရှုထောင်ခင်းကျင်းရေးအတွက်သော့များကို filter လုပ်ရန် array_diff () array_keys () array_keys () array_keys () ကိုသုံးပါ

M66 2025-06-06

PHP Development တွင်ဖွံ့ဖြိုးမှုအချို့ကို multensional array များမှအချို့သောသော့ချက်တန်ဖိုးများကိုစစ်ထုတ်ရန်လိုအပ်ကြောင်းမကြာခဏကြုံတွေ့ရလေ့ရှိသည်။ ဤဆောင်းပါးသည် functions array_diff () နှင့် array_keys `array_keys () ကိုထိထိရောက်ရောက်ထိရောက်စွာရရှိရန်မည်သို့ပေါင်းစပ်ရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။

1 ။ နိဒါန်း

  • array_keys ()
    ခင်းကျင်းအတွင်းရှိသော့ချက်အမည်များအားလုံးကိုပြင်ဆင်ခြင်း,

  • array_diff ()
    ကွဲပြားခြားနားသော array နှစ်ခု (နှစ်ခုထက်ပိုသော) array များအကြားခြားနားချက်ကိုတွက်ချက်သည်။

ဤလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် Array ၏အဓိကအကြောင်းရင်းအားလုံးကို ဦး စွာရယူနိုင်ပြီး,

2 ။ ပြ problem နာမြင်ကွင်း

အောက်ပါဖွဲ့စည်းပုံနှင့်အတူ multiensional array ရှိပါတယ်ဆိုပါစို့:

 $data = [
    [
        'id' => 1,
        'name' => 'Alice',
        'age' => 25,
        'city' => 'Beijing',
    ],
    [
        'id' => 2,
        'name' => 'Bob',
        'age' => 30,
        'city' => 'Shanghai',
    ],
];

ကျွန်ုပ်တို့သည် အသက်အရွယ် နှင့် မြို့ လယ်ကွင်းများကို subarray တစ်ခုစီတွင်စစ်ထုတ်လိုကြသည်

ကုဒ်အကောင်အထည်ဖော်ပါ

 <?php

$data = [
    [
        'id' => 1,
        'name' => 'Alice',
        'age' => 25,
        'city' => 'Beijing',
    ],
    [
        'id' => 2,
        'name' => 'Bob',
        'age' => 30,
        'city' => 'Shanghai',
    ],
];

// filtered ခံရဖို့လိုအပ်တဲ့အဓိကအကြောင်းရင်း
$keysToRemove = ['age', 'city'];

$result = [];

foreach ($data as $item) {
    // လက်ရှိခင်းကျင်းမှု၏သော့များကိုရယူပါ
    $keys = array_keys($item);
    
    // ထိန်းသိမ်းထားခံရဖို့သော့ကိုတွက်ချက်ပါ,အခုချက်ချင်း $keys နှင့် $keysToRemove ခြားနားချက်အစုံ
    $filteredKeys = array_diff($keys, $keysToRemove);
    
    // Subarrays ကိုသီးသန့်သော့များနှင့်ပြန်လည်တည်ဆောက်ပါ
    $filteredItem = [];
    foreach ($filteredKeys as $key) {
        $filteredItem[$key] = $item[$key];
    }
    
    $result[] = $filteredItem;
}

print_r($result);

code parsing:

  1. RARAY_KEYS ($ item) မှတဆင့်လက်ရှိ subarray ၏အဓိကအမည်များအားလုံးကိုရယူပါ။

  2. သင်သိမ်းဆည်းလိုသောသော့ကိုတွက်ချက်ရန် array_diff () ကို သုံးပါ။ ဆိုလိုသည်မှာမူရင်းသော့ချက်အသေးစာတမ်းကိုသင်သိမ်းဆည်းရန်သော့ချက်အနေဖြင့်ဖြစ်သည်။

  3. စစ်ထုတ်ထားသောသော့ချက်အမည်များကိုကျော်ပြီး array အသစ်ကိုပြန်လည်စုစည်းပါ။

  4. နောက်ဆုံးအနေဖြင့် ဒေါ်လာရလဒ် မှာ filtered multi-dialog-byensenal array ဖြစ်သည်။

4 ။ စစ်ဆင်ရေးရလဒ်များ

 Array
(
    [0] => Array
        (
            [id] => 1
            [name] => Alice
        )

    [1] => Array
        (
            [id] => 2
            [name] => Bob
        )
)

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

array_diff () နှင့် array_keys () ပေါင်းစပ်ခြင်းဖြင့် () ပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် Multidimensional Arrays မှသတ်မှတ်ထားသောသော့ချက်တန်ဖိုးများကိုလျင်မြန်စွာစစ်ထုတ်နိုင်သည်။ ဤနည်းလမ်းသည်အလွန်အမင်းစွယ်စုံရှိပြီးအမျိုးမျိုးသောရှုပ်ထွေးသောခင်းကျင်းရေးအဆောက်အအုံများကိုကိုင်တွယ်ရန်သင့်တော်သည်။ filter လုပ်ရန်သော့များများသို့မဟုတ်ခင်းကျင်းမှုအဆင့်များပိုမိုနက်ရှိုင်းသည်ဆိုပါကပြန်လည်ပြုပြင်ခြင်းအတွက်လုပ်ဆောင်ချက်များအတွက်လည်း encapsulated လုပ်နိုင်သည်။