Web Development တွင် HTTP တောင်းဆိုမှု parameters များကိုကိုင်တွယ်ခြင်းသည်ဘုံလုပ်ငန်းဖြစ်သည်။ Laravel framework တွင်အသုံးပြုသူများသည်အသုံးပြုသူမှတောင်းဆိုသောသတ်မှတ်ချက်များကိုရယူရန်အတွက် ဒေါ်လာတောင်းခံသည့် အရာဝတ်ထုကိုအသုံးပြုလေ့ရှိသည်။ သို့သော်ဤအချက်အလက်များကိုထိရောက်စွာလုပ်ဆောင်ရန်တောင်းဆိုချက် parameters များကိုစစ်ထုတ်ခြင်းသို့မဟုတ်အကောင်းမြင်သည့်အခါအရေးပါသောပြ issue နာဖြစ်လာသည်။
PHP တွင် array_diff_key () function သည် array နှစ်ခု၏အဓိကအမည်များကိုနှိုင်းယှဉ်ရန်နှင့်ဒုတိယခင်းကျင်းတွင်သော့ချက်အမည်များမပါ 0 င်သောပထမခင်းကျင်းမှုကိုပြန်ပို့ရန်အသုံးပြုသောအလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်မှုကိုအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် Laravel ရှိတောင်းဆိုထားသော parametersport ၏လုပ်ဆောင်မှု၏စွမ်းဆောင်ရည်ကိုအလွယ်တကူပိုကောင်းအောင်ပြုလုပ်နိုင်သည်။
array_diff_ey () သည် PHP built-in function တစ်ခုဖြစ်ပြီးဒုတိယခင်းကျင်းမှုတွင်မပါ 0 င်သောပထမခင်းကျင်းသည့်ပထမနေရာတွင်မပါ 0 င်သောနေရာများပါ 0 င်သော PHP built-in function အသစ်တစ်ခုဖြစ်သည်။ ဥပမာအားဖြင့်:
$array1 = ['name' => 'John', 'age' => 30, 'email' => 'john@example.com'];
$array2 = ['name' => 'John', 'email' => 'john@example.com'];
$result = array_diff_key($array1, $array2);
ဤဥပမာတွင် ဒေါ်လာရလဒ် မှာ -
['age' => 30]
array_diff_ey () သည် ဒေါ်လာ array2 တွင်တူညီသောသော့ချက်အမည်ရှိသည့် ဒေါ်လာ array1 တွင်ပစ္စည်းများကိုဖျက်ပစ်လိမ့်မည် ။
Laravel တွင်အထူးသဖြင့်ပုံစံတင်ပြချက်များနှင့် API တောင်းဆိုမှုများတွင်တောင်းဆိုမှု parameters များကိုမကြာခဏလိုအပ်သည်။ ပုံမှန်အားဖြင့်ကျွန်ုပ်တို့သည်မှန်ကန်သော parameters တွေကိုပါ 0 င်သော parameters များပါ 0 င်သော staryers များပါ 0 င်သည့်ခင်းကျင်းမှုတစ်ခုရရှိလိမ့်မည်။
array_diff_key () function ကိုအသုံးပြုခြင်းသည်မလိုလားအပ်သော parametersters များကိုတောင်းဆိုမှုများမှမလိုလားအပ်သော parameter များကိုလျင်မြန်စွာဖယ်ရှားပေးရန်ကူညီနိုင်ပြီးစွမ်းဆောင်ရည်နှင့်လုံခြုံရေးကိုတိုးတက်စေသည်။ တိကျတဲ့ဥပမာတစ်ခုကိုကြည့်ကြစို့။
use Illuminate\Http\Request;
public function store(Request $request)
{
// ခိုင်လုံသောတောင်းဆိုမှု parameter စာရင်းရှိပါသည်ဆိုပါစို့
$validParams = ['name', 'email', 'password'];
// တောင်းဆိုမှု parameters တွေကိုရယူပါ
$params = $request->all();
// သာခိုင်လုံသောတောင်းဆိုမှု parameters တွေကိုသာထိန်းသိမ်းထားကြသည်
$filteredParams = array_diff_key($params, array_flip($validParams));
// နောက်ထပ်အပြောင်းအလဲနဲ့ filtered parameteters တွေကိုသုံးပြီးဖျော်ဖြေနေကြသည်
User::create($filteredParams);
return response()->json(['message' => 'User created successfully']);
}
ဤဥပမာတွင်ကျွန်ုပ်တို့သည် array_diff_ey () ကို အသုံးပြု သည် ။ ဤနည်းဖြင့်ကျွန်ုပ်တို့ခွင့်ပြုထားသော parameters တွေကိုသာ အသုံးပြုသူ :: ဖန်တီးခြင်း () method ကိုဖန်တီးရန်ကျွန်ုပ်တို့သာသေချာအောင်ပြုလုပ်နိုင်သည်။
အချို့သောကိစ္စရပ်များတွင်အထူးသဖြင့်တောင်းဆိုထားသော parameters များအများအပြားရှိသည့်အခါမလိုအပ်သော parameters တွေကိုစစ်ထုတ်သည့်စွမ်းဆောင်ရည်ကိုသိသိသာသာတိုးတက်စေနိုင်သည်။ run array_diff_key () ၏ run အချိန်သည် linear ဖြစ်သည်။ ထို့ကြောင့်တောင်းဆိုမှု parameters အမြောက်အများ၏အပြောင်းအလဲအတွက်အလွန်သင့်လျော်သည်။ ရိုးရာသိသိသာသာ filtration နည်းလမ်းများနှင့်နှိုင်းယှဉ်လျှင်၎င်းသည်စွမ်းဆောင်ရည်အတွက်ပိုမိုထိရောက်သောဖြေရှင်းချက်ကိုပေးနိုင်သည်။
အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျွန်ုပ်တို့သည်အောက်ပါအခြေအနေများနှင့်ကြုံတွေ့ရနိုင်သည် ။
Api Parameter သည်စစ်ထုတ်ခြင်းများအတွက်ပြန်လည်ပြုပြင်ခြင်းများ ပြုလုပ်ပါကကျွန်ုပ်တို့သည်များသောအားဖြင့်တောင်းဆိုမှု parameters များစွာကိုရရှိသောအခါများသောအားဖြင့်များစွာသောတောင်းဆိုမှုများသည်မသက်ဆိုင်သောလုံခြုံရေးအန္တရာယ်များလည်းရှိသည်။ ဤမလိုအပ်သော parameters များကိုအလွယ်တကူဖယ်ရှားရန် array_diff_ey () ကိုသုံးပါ။
ပုံစံတင်သွင်းမှု - ပုံစံတင်သွင်းမှုပုံစံကိုထုတ်ယူသောအခါ (ဥပမာ CSRF တိုကင်များ, ဝှက်ထားသောနယ်ပယ်များစသည်) ။ array_diff_key () ကျွန်ုပ်တို့သည်မလိုလားအပ်သောလယ်ကွင်းများကိုစစ်ထုတ်နိုင်ပြီးခိုင်လုံသောအချက်အလက်များကိုသာတင်သွင်းနိုင်သည်။
Dynamic Parameter သည် အပြောင်းအလဲအချို့သို့မဟုတ်ရှုပ်ထွေးသောတောင်းဆိုမှုများတွင်နယ်ပယ်များသည် dynamically ထုတ်ပေးနိုင်သည်။ ဤအချိန်တွင်ကျွန်ုပ်တို့သည်ကျွန်ုပ်တို့ဂရုစိုက်သောသတ်မှတ်ချက်များကိုသာရရှိရန်သေချာစေရန် array_diff_ey () ကို သုံးနိုင်သည်။
array_diff_key () function ကိုအသုံးပြုခြင်းသည် Laravel တောင်းဆိုမှုဆိုင်ရာသတ်မှတ်ချက်များကိုလုပ်ဆောင်ခြင်းကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်ရန်အလွန်လက်တွေ့ကျသည့်လှည့်ကွက်တစ်ခုဖြစ်သည်။ ၎င်းသည်စွမ်းဆောင်ရည်ကိုတိုးတက်ကောင်းမွန်စေရုံသာမကကျွန်ုပ်တို့၏စနစ်၏လုံခြုံရေးကိုသေချာစေသည်။ မသက်ဆိုင်သောတောင်းဆိုမှု parameters တွေကိုဖယ်ရှားခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်အလားအလာရှိသောလုံခြုံရေးအန္တရာယ်များကိုရှောင်ရှားနေစဉ်အသုံးပြုသူများအမှန်တကယ်ဂရုစိုက်သည့်အချက်အလက်များကိုအာရုံစိုက်နိုင်ပါသည်။
အကယ်. သင်သည်တောင်းဆိုမှု parameters တွေကိုကိုင်တွယ်ရန်ထိရောက်သောလုံခြုံသောနည်းလမ်းတစ်ခုကိုရှာဖွေနေပါက array_diff_key () ကို စမ်းကြည့်ပါ။ ၎င်းသည်ပိုမိုကောင်းမွန်သော 0 က်ဘ်အပလီကေးရှင်းများတည်ဆောက်ရန်သင့်အားကူညီနိုင်သည့်ရိုးရှင်းသောနှင့်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။