PHP ပရိုဂရမ်တွင် Array_flip () တွင် array_flip () သည်အလွန်အသုံးများသောလုပ်ဆောင်မှုတစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်ချက်သည်သော့ချက်တန်ဖိုးများကို invertt လုပ်နိုင်သည်။ ထို့ကြောင့်အချို့သောကိစ္စရပ်များတွင်၎င်းကိုကိုင်တွယ်ရန်ပိုမိုတိကျသောနည်းလမ်းတစ်ခုဖြစ်သည်။ သို့သော် array_flip ကို သုံးသောအခါ developer များက developer များကဖြစ်နိုင်ချေရှိသော pulfall ကိုမကြာခဏလျစ်လျူရှုလေ့ရှိသည်။ နောက်တစ်ခုကဒီကိစ်စကိုနက်ရှိုင်းစွာတူးပြီးဖြေရှင်းနည်းတွေပေးမယ်။
ပထမ ဦး စွာ array_flip ၏အခြေခံလုပ်ဆောင်ချက်များကိုနားလည်ရန်အလွန်အရေးကြီးသည်။ ဤလုပ်ဆောင်ချက်၏လုပ်ဆောင်ချက်သည်ခင်းကျင်းမှုတွင်သော့နှင့်တန်ဖိုးများကိုလဲလှယ်ရန်ဖြစ်သည်။ ဥပမာအားဖြင့်:
<?php
$array = ['a' => 1, 'b' => 2, 'c' => 3];
$flipped = array_flip($array);
print_r($flipped);
?>
output ကိုဖြစ်လိမ့်မည်:
Array
(
[1] => a
[2] => b
[3] => c
)
အပေါ်ကပြထားတဲ့အတိုင်းခင်းကျင်းမှု၏သော့နှင့်တန်ဖိုးများကိုအပြန်အလှန်ဖလှယ်ကြသည်။ သို့သော်အချို့ဖြစ်ရပ်များတွင်တန်ဖိုးသည် Boolean တန်ဖိုးမှာ စစ်မှန်သော သို့မဟုတ် မှားယွင်းသော အရာဖြစ်နိုင်သည်။ ယခုအချိန်တွင်ပြ problems နာအချို့ရှိနိုင်သည်။
PHP တွင် Boolean တန်ဖိုးများကို ကိန်းဂဏန်းများ အဖြစ်ပြောင်းလဲ သောအခါ TRUSES ကို 1 နှင့် false သို့ပြောင်းလဲလိမ့်မည် ။ ဆိုလိုသည်မှာ array_flip () သည် ခင်းကျင်းမှု၏တန်ဖိုးသည် boolean တန်ဖိုးရှိသည့်အခါတန်ဖိုးများကိုဆုံးရှုံးစေနိုင်သည်။
တိကျတဲ့ဥပမာတစ်ခုကိုကြည့်ကြစို့။
<?php
$array = ['key1' => true, 'key2' => false, 'key3' => 1];
$flipped = array_flip($array);
print_r($flipped);
?>
output ကိုဖြစ်လိမ့်မည်:
Array
(
[1] => key3
[0] => key2
)
ဤဥပမာတွင် 1 သို့ ပြောင်းလဲခြင်း သည် 1 သို့ပြောင်းလဲသွားသည်, မှားယွင်းသောအယူမှား သည် 0 သို့ကူးပြောင်းသည် 0 သို့ပြောင်းလဲခြင်းကို 0 င် အဖြစ် ပြောင်းလဲခြင်းကို 0 င်လာသည်။ ဤနည်းအားဖြင့် array_flip () သည် သတင်းအချက်အလက်၏အစိတ်အပိုင်းကိုရှုံးနိမ့်ပြီး Key1 ကို သော့ 3 နှင့်သော့ဖွင့်ထားပြီး Key2 နှင့် Key3 အကြားပ conflict ိပက်ခလည်းရှိသည်။
Boolean တန်ဖိုးများ၏သွယ်ဝိုက်ပြောင်းလဲခြင်းပြ problem နာကိုရှောင်ရှားရန် array_flip ၏မှန်ကန်မှုကိုသေချာစေရန်အောက်ပါနည်းလမ်းများကိုကျွန်ုပ်တို့ယူနိုင်သည်။
ကျွန်ုပ်တို့ Array_map () ကိုသုံးနိုင်သည်။ Array ရှိ Boolean တန်ဖိုးများကိုထူးခြား။ ပ conflict ိပက်ခမဟုတ်သောတန်ဖိုးများသို့ပြောင်းလဲခြင်းကိုသေချာစေရန်။ ဥပမာအားဖြင့်, သင်သည် boolean တန်ဖိုးကို string တစ်ခုသို့ပြောင်းလဲနိုင်သည်။
<?php
$array = ['key1' => true, 'key2' => false, 'key3' => 1];
$array = array_map(function($value) {
return is_bool($value) ? ($value ? 'true' : 'false') : $value;
}, $array);
$flipped = array_flip($array);
print_r($flipped);
?>
၎င်းသည် boolean စစ်မှန် ပြီး မှားသော အယူအဆများကိုသွယ်ဝိုက်ပြောင်းလဲခြင်းပြ issues နာများကိုရှောင်ရှားသည်။
နောက်နည်းတစ်နည်းမှာ boolean value ကိုထူးခြားစွာမှတ်မိနိုင်သောကြိုးအဖြစ်ပြောင်းလဲရန် Serialize () ကို အသုံးပြုရန်ဖြစ်သည်။ ဥပမာအားဖြင့်:
<?php
$array = ['key1' => true, 'key2' => false, 'key3' => 1];
$array = array_map(function($value) {
return is_bool($value) ? serialize($value) : $value;
}, $array);
$flipped = array_flip($array);
print_r($flipped);
?>
၎င်းသည် Boolean တန်ဖိုးများကို မှန်ကန် ပြီး မှားသည် "B: 1;" နှင့် "ခ: 0;" အခြားတန်ဖိုးများနှင့်ပ conflicts ိပက်ခများကိုရှောင်ရှားရန်။
ဖြစ်နိုင်လျှင် array ရှိတန်ဖိုးများသည်မိမိတို့ကိုယ်ကိုဆည်းသလော, ၎င်းသည်သင့်အားထပ်မံပြောင်းလဲခြင်းအဆင့်များမလိုအပ်ပါက array_flip () ကို တိုက်ရိုက်အသုံးပြုရန်ခွင့်ပြုသည်။
Array_flip () သည်အလွန်အသုံးဝင်သော PHP function တစ်ခုဖြစ်သည်။ သို့သော် Boolean တန်ဖိုးများပါ 0 င ် သည့် array များနှင့်ဆက်ဆံရာတွင်သင်သတိထားရန်လိုအပ်သည်။ Array_map ()) , serialize () ကို အသုံးပြုခြင်းသို့မဟုတ် Array တန်ဖိုးများ၏ထူးခြားမှုကိုအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်အလားအလာရှိသောအန္တရာယ်များကိုရှောင်ရှားနိုင်ပြီး array_flip ၏မှန်ကန်မှုကိုရှောင်ရှားနိုင်သည်။
ဤဆောင်းပါး၏ခွဲခြမ်းစိတ်ဖြာခြင်းမှတစ်ဆင့်ဖွံ့ဖြိုးရေးလုပ်ငန်းစဉ်အတွင်း Boolean တန်ဖိုးများကိုသွယ်ဝိုက်ပြောင်းလဲခြင်းကြောင့်ဖြစ်ပေါ်လာသောပြ problems နာများကိုပိုမိုနားလည်သဘောပေါက်ရန်နှင့်ရှောင်ရှားရန်ကျွန်ုပ်မျှော်လင့်ပါသည်။