PHP တွင်ဒေတာစီစစ်ခြင်းနှင့်စိစစ်အတည်ပြုသည်အသုံးပြုသူထည့်သွင်းမှုများကိုပြုပြင်ရန်အတွက်အရေးပါသည်။ ကျွန်ုပ်တို့သည် filter_var () ကို သုံး. ဖိုင်တွဲတစ်ခုစီကိုစစ်ဆေးရန်ကျွန်ုပ်တို့မကြာခဏအသုံးပြုပါက, ပုံစံတစ်ခုစီတင်ထားသောကွက်လပ်များကဲ့သို့သောအချက်အလက်များအစရှိပါကနယ်ပယ်တစ်ခုစီသည်ဤအချိန်တွင်နယ်ပယ် တစ်ခုစီ အတွက်ကွဲပြားခြားနားသောစိစစ်မှုစည်းမျဉ်းများလိုအပ်သည်။
Filter_var_array () သည် PHP မှပေးသော function တစ်ခုဖြစ်သော fatch function တစ်ခုဖြစ်ပြီးများသောအားဖြင့် ဒေါ်လာ _get သို့မဟုတ် $ _post မှအချက်အလက်များကဲ့သို့သောအပေါင်းလက္ခဏာပြင်ဆင်မှုတစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်မှုသည်သင်သတ်မှတ်သည့် filter rults နှင့်အညီလယ်ကွင်းတစ်ခုစီကိုသီးခြားစီလုပ်ဆောင်နိုင်သည်။
function ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -
filter_var_array(array $data, array|int $definition, bool $add_empty = true): array|false|null
$ ဒေတာ : လုပ်ငန်းများ၌ခံရဖို့ Array ဒေတာ။
$ အဓိပ္ပာယ် - စည်းမျဉ်းကိုစစ်ထုတ်ခြင်း (နယ်ပယ်အားလုံးအတွက် filters all filter) သို့မဟုတ်ခင်းကျင်းခြင်း (ကွဲပြားခြားနားသောနယ်ပယ်များအတွက်ကွဲပြားခြားနားသော filter များကိုသတ်မှတ်ခြင်း) ။
$ add_empty : ရလဒ်အနေဖြင့်ကိုက်ညီသောသော့များကိုထည့်သွင်းခြင်းမရှိ ,
သင့်တွင်စာတိုက်ပုံးနှင့်အသက်အရွယ်နယ်ပယ်များဖြင့်အသုံးပြုသူ login ပုံစံရှိသည်ဆိုပါစို့။ သင်စာတိုက်ပုံး, နိုက်စ်စိစစ်အတည်ပြုခြင်းနှင့်အကွာအဝေးကိုကန့်သတ်ထားသည်။ အောက်ပါအတိုင်း filter_var_array () ကို သုံးပါ။
$data = [
'email' => 'test@example.com',
'age' => '25'
];
$filters = [
'email' => FILTER_VALIDATE_EMAIL,
'age' => [
'filter' => FILTER_VALIDATE_INT,
'options' => [
'min_range' => 18,
'max_range' => 99
]
]
];
$result = filter_var_array($data, $filters);
print_r($result);
output ကိုဖြစ်လိမ့်မည်:
Array
(
[email] => test@example.com
[age] => 25
)
အတည်ပြုခြင်းမအောင်မြင်ပါကသက်ဆိုင်ရာတန်ဖိုးသည် မှားယွင်း လာလိမ့်မည်။
Filter_var_array () သည်ပုံစံဒေတာများကိုပြုပြင်ရန်အတွက်အထူးသဖြင့်သင့်တော်သည်,
$_POST = [
'username' => 'jack',
'email' => 'jack@gitbox.net',
'age' => '17'
];
$rules = [
'username' => [
'filter' => FILTER_SANITIZE_STRING,
'flags' => FILTER_FLAG_NO_ENCODE_QUOTES
],
'email' => FILTER_VALIDATE_EMAIL,
'age' => [
'filter' => FILTER_VALIDATE_INT,
'options' => ['min_range' => 18]
]
];
$cleanData = filter_var_array($_POST, $rules);
print_r($cleanData);
ဤဥပမာတွင်အသက် 18 နှစ်အောက်ဖြစ်ပါကပြန်လည်ရှင်သန်လာသည့် အသက်အရွယ်သည် မှားယွင်း လာပြီးအတည်ပြုခြင်းမအောင်မြင်ပါ။
filter_default နှင့် custom options များမှ default value ကိုသတ်မှတ်နိုင်သည်။
$data = [
'email' => 'wrong-format',
// 'age' => missing
];
$rules = [
'email' => FILTER_VALIDATE_EMAIL,
'age' => [
'filter' => FILTER_VALIDATE_INT,
'options' => ['default' => 18]
]
];
$result = filter_var_array($data, $rules);
print_r($result);
ထုတ်လုပ်မှု -
Array
(
[email] => false
[age] => 18
)
Filter_var_Array () ကို အသုံးပြု. တင်သွင်းသောဒေတာများကိုသင်လက်ခံရရှိသည့်အခါအချက်အလက်များကိုလျင်မြန်စွာပြုလုပ်နိုင်သည်။
$json = file_get_contents('https://api.gitbox.net/user/input');
$input = json_decode($json, true);
$filters = [
'email' => FILTER_VALIDATE_EMAIL,
'subscription' => FILTER_VALIDATE_BOOLEAN
];
$validated = filter_var_array($input, $filters);
အကယ်. 0 င်ရောက်လာသော $ ဒေတာများသည် ခင်းကျင်းမှုတစ်ခုမဟုတ်ပါက Filter_var_array () သည် မှားယွင်းသော ပြန်လာလိမ့်မည်။
အကယ်. သော့အချို့သည် ဒေါ်လာအဓိပ္ပာယ် ဖွင့်ဆိုသော်လည်း $ add_empty သည် မှန်ကန်စွာ သတ်မှတ်ထားပါက၎င်းတို့သည်မှန်ကန်စွာပြန်လည်ရရှိထားသည့်အတိုင်း တရားမ 0 င်သော ရလဒ်များဖြင့်ပေါ်လာလိမ့်မည်။
ဒေတာများကိုအတည်ပြုခြင်းထက်အချက်အလက်များကိုသန့်ရှင်းရေးလုပ်နေသော type_sanitize_ * * ၏ type_sanitize_ * * ကိုအသုံးပြုရန်ဂရုပြုရန်လိုအပ်သည်။
filter_var_array () သည်အချက်အလက်အစုတခုကိုဖြည့်ဆည်းပေးပြီးသန့်ရှင်းရေးလုပ်ခြင်း, Code ကိုပိုမိုအကောက်အားထိန်းသိမ်းရန်ကူညီနိုင်သည့်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည်ပုံစံအချက်အလက်များ, API တောင်းဆိုမှုများ,
filter_var_array () ကို အသုံးပြုရန်သင်ယူပါ။ PHP စီမံကိန်းများအတွက်အချက်အလက်အပြောင်းအလဲအတွက်အချက်အလက်များ၏လုံခြုံရေးနှင့်ထိရောက်မှုကိုသင်အလွန်တိုးတက်အောင်လုပ်နိုင်လိမ့်မည်။