APIS ကိုတီထွင်သောအခါ client မှပေးပို့သောတောင်းဆိုမှုဆိုင်ရာသတ်မှတ်ချက်များကိုဖြည့်ဆည်းပေးနိုင်ရန်သေချာစေရန် Parameter Verification ကိုပြုလုပ်ရန်လိုအပ်သည်။ PHP သည် array_diff_ukey () function သည် paramiff_ukey () လုပ်ဆောင်မှုသည်အလွန်အမင်းထိရောက်သောအခန်းကဏ် play မှပါ 0 င်နိုင်သည်။
Array_diff_ukey () သည် array နှစ်ခုနှင့်နှိုင်းယှဉ်သော function တစ်ခုဖြစ်သော်လည်း၎င်းနှင့် array_diff () တို့၏ခြားနားချက်သည် array_diff_ukey () သည် array_diff_ukey () နှင့်နှိုင်းယှဉ်ထားသည်။ ၎င်းသည် array နှစ်ခုကိုရရှိသည်နှင့်မညီညွတ်သောသော့များအားလုံးနှင့်အတူ elements array ကိုပြန်ပို့သည်, အထူးသဖြင့် API တောင်းဆိုမှုများတွင်အချို့သော API တောင်းဆိုမှုများတွင်မလိုအပ်သော parameterser များပါရှိမရှိစစ်ဆေးသောအခါအထူးသဖြင့်အသုံးဝင်သည်။
array_diff_ukey () function ကို၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array_diff_ukey(array $array1, array $array2, callable $key_compare_func): array
$ array1 နှင့် $ array2 : နှိုင်းယှဉ်ရန် arrys နှစ်ခု။
$ key_compare_funct : arry နှစ်ခု၏သော့များကိုနှိုင်းယှဉ်သော callback function ကို။
API Parameter Verification တွင် 0 န်ဆောင်မှုခံယူသူမှပေးပို့သောတောင်းဆိုမှုသည်ကျွန်ုပ်တို့မျှော်လင့်ထားသည့်အချက်များပါ 0 င်သည်။ ဒီအလုပ်ကိုပြီးမြောက်အောင် array_diff_ukey () ကို သုံးနိုင်တယ်။
ကျွန်ုပ်တို့တွင် API တောင်းဆိုမှုများအတွက် parameters များအတွက် parameters တွေကိုများစွာရှိသည်ဆိုပါစို့။ 0 န်ဆောင်မှုခံယူသူသည်အပို parameters တွေကိုနှင့်အတူတောင်းဆိုမှုကိုပေးပို့သည်နှင့်ဤမသက်ဆိုင်သော parametersters များကိုဖယ်ရှားရန်နှင့်ကျွန်ုပ်တို့ဂရုစိုက်သော parametersters များကိုသာဖယ်ရှားပစ်ရန်လိုအပ်သည်။
0 န်ဆောင်မှုခံယူသူသည်အောက်ပါသတ်မှတ်ချက်များပါ 0 င်ရန်တောင်းဆိုသည်ဆိုပါစို့။
$requiredParams = ['name', 'age', 'email'];
client မှပေးပို့သော Parameter Tarray သည်အောက်ပါအတိုင်းဖြစ်သည် -
$requestParams = [
'name' => 'John',
'age' => 30,
'email' => 'john@example.com',
'extra_param' => 'value',
];
$ Tamparams မှ Except_param ကို ဖယ်ရှားလိုပြီးကျွန်ုပ်တို့အားစစ်ဆေးရန် array_diff_ukey () ကို သုံးနိုင်သည်။
// callback function ကိုသတ်မှတ်ပါ,သော့ထဲမှာရှိမရှိနှိုင်းယှဉ် $requiredParams အလယ်ပိုင်း
$keyCompareFunc = function ($key1, $key2) use ($requiredParams) {
return in_array($key1, $requiredParams) ? 0 : 1; // သာလိုအပ်သော parameters တွေကိုသာထိန်းသိမ်းထားကြသည်
};
// အသုံးပြု array_diff_ukey() filtering လုပ်ဆောင်ပါ
$filteredParams = array_diff_ukey($requestParams, array_flip($requiredParams), $keyCompareFunc);
print_r($filteredParams);
output ရလဒ်ဖြစ်လိမ့်မည်:
Array
(
[name] => John
[age] => 30
[email] => john@example.com
)
အပေါ်ကပြထားတဲ့အတိုင်း Except_Param ကို တောင်းဆိုမှု parameter array ကနေအောင်မြင်စွာဖယ်ရှားပစ်လိုက်တယ်။
တစ်ခါတစ်ရံတွင်ကျွန်ုပ်တို့သည်အပိုဆောင်း parameters တွေကိုမှသာဖယ်ထုတ်ရန်မလိုပါ, သို့သော်အချို့သော parameterser ၏တန်ဖိုးများသည်မျှော်လင့်ထားသည့်အမျိုးအစားများနှင့်ကိုက်ညီမှုရှိမရှိစစ်ဆေးခြင်းကဲ့သို့သောပိုမိုရှုပ်ထွေးသောစောင့်ကြည့်ချက်များကိုစစ်ဆေးရန်လိုအပ်သည်။ array_diff_ukey () နှင့်အခြားစိစစ်အတည်ပြုယုတ္တိဗေဒပေါင်းစပ်ခြင်းဖြင့်ဤအရာကိုကျွန်ုပ်တို့အောင်မြင်နိုင်သည်။
Parameter သည် ကိန်းနှင့် အီးမေးလ် တစ်စောင်ဖြစ်ရန်မျှော်လင့်ထားကြောင်းမျှော်လင့်ထားပါသည်။ parameters တွေကိုစစ်ပြီးတဲ့အခါဒီစိစစ်မှုအမျိုးအစားတွေကိုဆက်လုပ်နိုင်တယ်။
// callback function ကိုသတ်မှတ်ပါ,အမျိုးအစားစိစစ်အတည်ပြုလုပ်ဆောင်ပါ
$keyCompareFunc = function ($key1, $key2) use ($requiredParams) {
return in_array($key1, $requiredParams) ? 0 : 1; // သာလိုအပ်သော parameters တွေကိုသာထိန်းသိမ်းထားကြသည်
};
// မလိုအပ်သော parameters တွေကို filter
$filteredParams = array_diff_ukey($requestParams, array_flip($requiredParams), $keyCompareFunc);
// အတည်ပြုစစ်ဆေးပါ
if (isset($filteredParams['age']) && !is_int($filteredParams['age'])) {
echo 'Age must be an integer';
}
if (isset($filteredParams['email']) && !filter_var($filteredParams['email'], FILTER_VALIDATE_EMAIL)) {
echo 'Invalid email format';
}
print_r($filteredParams);
ဒီ ဥပမာမှာမလိုအပ်တဲ့ parameters တွေကိုပထမ ဦး ဆုံးစစ်ထုတ်ပြီး ,
array_diff_ukey () function ကိုဆွေးနွေးခြင်းအားဖြင့် API တောင်းဆိုမှုများတွင်ကျွန်ုပ်တို့သည် filter filter parameters များကိုထိရောက်စွာစစ်ဆေးနိုင်သည်။ ၎င်းသည်မလိုအပ်သော parameters တွေကိုဖယ်ရှားပေးရုံသာမကရှုပ်ထွေးသောစိစစ်ရေးယုတ္တိဗေဒတွင်လည်းအရေးကြီးသောအခန်းကဏ် plays မှပါ 0 င်သည်။ တောင်းဆိုမှု parameters တွေကိုတင်းကြပ်စွာထိန်းချုပ်ရန်လိုအပ်သည့် apis များအတွက် Array_diff_ukey () သည်အလွန်လက်တွေ့ကျသောကိရိယာတစ်ခုဖြစ်သည်။