လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Array တွင်သော့မိတ္တူပွားများရှိပါက array_combine () အမှားတစ်ခုဖွင့်မည်လား။

Array တွင်သော့မိတ္တူပွားများရှိပါက array_combine () အမှားတစ်ခုဖွင့်မည်လား။

M66 2025-05-16

PHP တွင် array_combine () function ကို arrays နှစ်ခုကိုပေါင်းသင်းရေးဆိုင်ရာခင်းကျင်းမှုတစ်ခုအဖြစ်ပေါင်းစပ်ရန်အသုံးပြုသည်။ ၎င်း၏ပထမဆုံး parameter သည်သော့ချက်ခင်းကျင်းနှင့်ဒုတိယ parameter သည်တန်ဖိုးခင်းကျင်းဖြစ်သည်။ function ကို key array တစ်ခုစီကိုတွဲဖက်ခင်းတွဲမှုရှိသည့်သော့ချက်တစ်ခုစီနှင့်တန်ဖိုးရှိ array တွင်ရှိသော element တစ်ခုစီကိုသက်ဆိုင်ရာတန်ဖိုးတစ်ခုအဖြစ်အသုံးပြုပါလိမ့်မည်။

သို့သော်သော့ချက်ခင်းကျင်းရေးတွင်ထပ်တူသော့များရှိပါက array_combine () ကို အသုံးပြုသည့်အခါပြ problems နာများရှိလိမ့်မည်။ ဘာတွေဖြစ်နေလဲ, ဒီအခြေအနေကိုဘယ်လိုကိုင်တွယ်ရမယ်ဆိုတာကိုကြည့်ကြရအောင်။

1 ။ array_comboine ၏အခြေခံအသုံးပြုမှု ()

array_comboine () ၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 array_combine(array $keys, array $values): array|false
  • $ keys : သော့အမည်များပါ 0 င်သည့်နေရာတစ်ခု။

  • $ တန်ဖိုးများ - သော့ချက်၏သက်ဆိုင်ရာတန်ဖိုးများပါ 0 င်သောခင်းကျင်းမှု။

$ keys array ရှိ elements များသည် ဒေါ်လာတန်ဖိုးများရှိ သည့်အရာများကိုကိုက်ညီသည့်အခါ array_combovine () သည် array_combovie () သည် Associative Array အသစ်ကိုပြန်လည်ပေးအပ်သည်။

နမူနာကုဒ်:

 $keys = ['a', 'b', 'c'];
$values = [1, 2, 3];
$result = array_combine($keys, $values);
print_r($result);

ရလဒ်ရလဒ် -

 Array
(
    [a] => 1
    [b] => 2
    [c] => 3
)

2 ။ သော့ချက်ခင်းကျင်းရေးတွင်သော့မိတ္တူပွားများရှိသည့်အခါဘာဖြစ်မည်နည်း။

အကယ်. သော့ချက်ခင်းကျင်းရေးတွင်ထပ်တူသော့များရှိပါက array_comBine () သည် အမှားတစ်ခုဖြစ်ပြီး မှားယွင်းသောအမှားတစ်ခုကို သတင်းပို့လိမ့်မည်။ ဘာဖြစ်လို့လဲဆိုတော့ PHP မှာ array ရဲ့သော့တွေကထူးခြားတယ်, ထပ်ခါတလဲလဲအဓိကတန်ဖိုးများကိုမရရှိနိုင်ပါ။

နမူနာကုဒ်:

 $keys = ['a', 'b', 'b'];
$values = [1, 2, 3];
$result = array_combine($keys, $values);

if ($result === false) {
    echo "အမှားတစ်ခုဖြစ်ပွားခဲ့သည်,ပုံတူပွားများခင်းကျင်းတွင်တည်ရှိသည်。";
}

ရလဒ်ရလဒ် -

 အမှားတစ်ခုဖြစ်ပွားခဲ့သည်,ပုံတူပွားများခင်းကျင်းတွင်တည်ရှိသည်。

အပေါ်ကပြထားတဲ့အတိုင်း array_comboine () မှားယွင်းစွာ ပြန်ပို့ခြင်းနှင့်ခိုင်လုံသောအပေါင်းအသင်းခင်းကျင်းမှုကိုမဖန်တီးပါ။

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

ထပ်ခါတလဲလဲသော့များကြောင့်ဖြစ်ပေါ်လာသောအမှားများကိုရှောင်ရှားရန်သင်သော့ချက်ခင်းကျင်းမှုတွင် array_comboine () မသုံးမီထပ်တူသော့များပါ 0 င်သည်ကိုစစ်ဆေးနိုင်သည်။ ထပ်တူသော့များရှိပါက၎င်းတို့နှင့်အတူကိုင်တွယ်ရန်အောက်ပါနည်းလမ်းများကိုများသောအားဖြင့်ယူနိုင်သည်။

3.1 ။ ထပ်သော့များကိုဖယ်ရှားပါ

အဆိုပါ array_unique () function ကို duplicate သော့များကိုဖယ်ရှားရန်အသုံးပြုနိုင်ပါသည်။ ဤသည်ကအဓိကခင်းကျင်းမှုသည် array_combine () ကိုကူးယူခြင်းမပြုရန်သေချာစေသည်။

 $keys = ['a', 'b', 'b'];
$values = [1, 2, 3];
$keys = array_unique($keys);  // ထပ်သော့များကိုဖယ်ရှားပါ

$result = array_combine($keys, $values);
print_r($result);

ရလဒ်ရလဒ် -

 Array
(
    [a] => 1
    [b] => 2
)
3.2 ။ စိတ်ကြိုက်နှောင်ကြိုးမဟာမိတ်နည်းဗျူဟာ

နောက်ထပ်ချဉ်းကပ်နည်းတစ်ခုမှာထပ်တူသော့များကိုကိုင်တွယ်ရန်ထုံးစံနည်းဗျူဟာကိုအသုံးပြုရန်ဖြစ်သည်။ ဥပမာအားဖြင့် sparra_count_values ​​() ကိုသုံးပါ။

 $keys = ['a', 'b', 'b'];
$values = [1, 2, 3];

$keys_count = array_count_values($keys);
foreach ($keys_count as $key => $count) {
    if ($count > 1) {
        // ထပ်ခါတလဲလဲသော့များကို processing,ဥပမာအားဖြင့်, သော့ပြီးနောက်နံပါတ်များကိုဖြည့်ပါ
        $keys = array_map(function ($k) use ($key) {
            static $counter = 1;
            if ($k === $key) {
                return $key . $counter++;
            }
            return $k;
        }, $keys);
    }
}

$result = array_combine($keys, $values);
print_r($result);

ရလဒ်ရလဒ် -

 Array
(
    [a] => 1
    [b1] => 2
    [b2] => 3
)

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

array_comboine () ကို အသုံးပြုသောအခါ key array တွင်သော့မိတ္တူပွားများရှိပါက PHP သည်အမှားတစ်ခုနှင့် မှားယွင်းသော တုံ့ပြန်မှုကိုသတင်းပို့လိမ့်မည်။ ဤအရာကိုရှောင်ရှားရန်သင်သည်ထပ်တူသော့များကိုဖယ်ရှားရန် array_unique () function ကိုသုံးနိုင်သည်သို့မဟုတ်သင်လိုအပ်ချက်များနှင့်အညီထပ်တူသော့များကိုကိုင်တွယ်ရန်မဟာဗျူဟာကိုစိတ်ကြိုက်ပြုလုပ်နိုင်သည်။

ဤနည်းလမ်းများမှတစ်ဆင့် array_combine () ကို အသုံးပြုသောအခါအမှားအယွင်းများကိုသင်ရှောင်ရှားနိုင်ရန်နှင့်အမှန်တကယ်လိုအပ်ချက်များနှင့်အညီသော့များကိုင်တွယ်ပုံကိုညှိရန်သင်ရှောင်ရှားရန်သင်သေချာစေနိုင်သည်။