PHP Filters
ဒေတာစစ်ဆေးခြင်း = ဒေတာသည် သင့်လျော်သောပုံစံရှိမရှိ ဆုံးဖြတ်ပါ။
Sanitizing data = ဒေတာမှ တရားမဝင် ဇာတ်ကောင်ကို ဖယ်ရှားပါ။
PHP Filter Extension
ပြင်ပထည့်သွင်းမှုကို အတည်ပြုရန်နှင့် သန့်စင်ရန် PHP စစ်ထုတ်မှုများကို အသုံးပြုသည်။
PHP filter extension တွင် user input ကိုစစ်ဆေးရန်အတွက် လိုအပ်သောလုပ်ဆောင်ချက်များစွာရှိပြီး data validation ကိုပိုမိုလွယ်ကူမြန်ဆန်စေရန်ဒီဇိုင်းပြုလုပ်ထားသည်။
PHP filter extension မှ ပေးဆောင်သည်များကို စာရင်း filter_list()
ပြုစုရန် လုပ်ဆောင်ချက်ကို အသုံးပြုနိုင်ပါသည်။
ဥပမာ
<table>
<tr>
<td>Filter Name</td>
<td>Filter ID</td>
</tr>
<?php
foreach (filter_list() as $id =>$filter) {
echo '<tr><td>' . $filter . '</td><td>' . filter_id($filter) . '</td></tr>';
}
?>
</table>
Filters ကို ဘာကြောင့် သုံးတာလဲ။
ဝဘ်အပလီကေးရှင်းများစွာသည် ပြင်ပထည့်သွင်းမှုကို လက်ခံရရှိကြသည်။ ပြင်ပထည့်သွင်းမှု/ဒေတာ ဖြစ်နိုင်သည်-
- ဖောင်တစ်ခုမှ အသုံးပြုသူ ထည့်သွင်းခြင်း။
- ကွတ်ကီး
- ဝဘ်ဝန်ဆောင်မှုဒေတာ
- ဆာဗာ အပြောင်းအလဲများ
- ဒေတာဘေ့စ်မေးမြန်းမှုရလဒ်များ
ပြင်ပဒေတာကို အမြဲအတည်ပြုသင့်သည်။
မမှန်ကန်သော တင်သွင်းထားသော ဒေတာများသည် လုံခြုံရေးပြဿနာများနှင့် သင့်ဝဘ်စာမျက်နှာကို ပျက်သွားစေနိုင်သည်။
PHP filters များကိုအသုံးပြုခြင်းဖြင့် သင့်အပလီကေးရှင်းသည် မှန်ကန်သောထည့်သွင်းမှုကိုရရှိကြောင်း သေချာစေနိုင်ပါသည်။
PHP filter_var() Function
လုပ်ဆောင်ချက် သည် filter_var()
ဒေတာကို အတည်ပြုခြင်းနှင့် သန့်ရှင်းစေခြင်း နှစ်မျိုးလုံးဖြစ်သည်။
လုပ်ဆောင်ချက် သည် filter_var()
သတ်မှတ်ထားသော စစ်ထုတ်မှုတစ်ခုဖြင့် ကိန်းရှင်တစ်ခုတည်းကို စစ်ထုတ်သည်။ ဒေတာနှစ်ပိုင်းယူသည်-
- သင်စစ်ဆေးလိုသော ကိန်းရှင်
- အသုံးပြုရန်စစ်ဆေးသည့်အမျိုးအစား
ကြိုးတစ်ချောင်းကို ဆေးကြောပါ။
အောက်ပါဥပမာသည် filter_var()
string တစ်ခုမှ HTML tag အားလုံးကိုဖယ်ရှားရန် function ကိုအသုံးပြုသည်-
ဥပမာ
<?php
$str = "<h1>Hello World!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
?>
ကိန်းပြည့်တစ်ခုကို အတည်ပြုပါ။
အောက်ပါဥပမာသည် filter_var()
ကိန်းရှင် $int သည် ကိန်းပြည့်ဟုတ်မဟုတ် စစ်ဆေးရန် လုပ်ဆောင်ချက်ကို အသုံးပြုသည်။ $int သည် ကိန်းပြည့်ဖြစ်ပါက၊ အောက်ဖော်ပြပါကုဒ်၏ အထွက်သည်- "Integer မှန်ကန်သည်" ဖြစ်သည်။ $int သည် ကိန်းပြည့်မဟုတ်ပါက၊ အထွက်သည်- "Integer မမှန်ပါ":
ဥပမာ
<?php
$int = 100;
if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
echo("Integer is valid");
} else {
echo("Integer is not valid");
}
?>
အကြံပြုချက်- filter_var() နှင့် 0 ပြဿနာ
အပေါ်က ဥပမာမှာ $int ကို 0 လို့သတ်မှတ်ထားရင်၊ အပေါ်က function က "Integer is not valid" ဆိုပြီး ပြန်ပေးပါလိမ့်မယ်။ ဤပြဿနာကိုဖြေရှင်းရန်၊ အောက်ပါကုဒ်ကိုအသုံးပြုပါ။
ဥပမာ
<?php
$int = 0;
if (filter_var($int, FILTER_VALIDATE_INT) === 0 || !filter_var($int, FILTER_VALIDATE_INT) === false) {
echo("Integer is valid");
} else {
echo("Integer is not valid");
}
?>
IP လိပ်စာကို အတည်ပြုပါ။
အောက်ပါဥပမာသည် filter_var()
ပြောင်းလဲနိုင်သော $ip သည် တရားဝင် IP လိပ်စာဟုတ်မဟုတ် စစ်ဆေးရန် လုပ်ဆောင်ချက်ကို အသုံးပြုသည်-
ဥပမာ
<?php
$ip = "127.0.0.1";
if (!filter_var($ip, FILTER_VALIDATE_IP) === false) {
echo("$ip is a valid IP address");
} else {
echo("$ip is not a valid IP address");
}
?>
အီးမေးလ်လိပ်စာကို သန့်ရှင်းစေပြီး မှန်ကန်ကြောင်း စစ်ဆေးပါ။
အောက်ဖော်ပြပါ ဥပမာသည် filter_var()
$email variable မှ တရားမဝင် စာလုံးများအားလုံးကို ဖယ်ရှားရန် လုပ်ဆောင်ချက်ကို အသုံးပြုပြီး၊ ထို့နောက် ၎င်းသည် တရားဝင်သော အီးမေးလ်လိပ်စာ ဟုတ်မဟုတ် စစ်ဆေးပါ။
ဥပမာ
<?php
$email = "[email protected]";
// Remove all illegal characters from email
$email = filter_var($email, FILTER_SANITIZE_EMAIL);
// Validate e-mail
if (!filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
echo("$email is a valid email address");
} else {
echo("$email is not a valid email address");
}
?>
URL တစ်ခုကို သန့်ရှင်းစေပြီး မှန်ကန်ကြောင်း စစ်ဆေးပါ။
အောက်ဖော်ပြပါ ဥပမာသည် filter_var()
URL တစ်ခုမှ တရားမဝင် စာလုံးအားလုံးကို ဖယ်ရှားရန် လုပ်ဆောင်ချက်ကို အသုံးပြုပြီး၊ ထို့နောက် $url သည် တရားဝင် URL ဟုတ်မဟုတ် စစ်ဆေးပါ။
ဥပမာ
<?php
$url = "https://www.w3schools.com";
// Remove all illegal characters from a url
$url = filter_var($url, FILTER_SANITIZE_URL);
// Validate url
if (!filter_var($url, FILTER_VALIDATE_URL) === false) {
echo("$url is a valid URL");
} else {
echo("$url is not a valid URL");
}
?>
PHP Filter ကိုးကားချက် အပြည့်အစုံ
စစ်ထုတ်ခြင်းလုပ်ဆောင်ချက်အားလုံး၏ ပြီးပြည့်စုံသော ကိုးကားမှုအတွက်၊ ကျွန်ုပ်တို့၏ ပြီးပြည့်စုံသော PHP Filter Reference သို့ သွားပါ။ မည်သည့်ရွေးချယ်မှုများနှင့် အလံများရရှိနိုင်သည်ကို ကြည့်ရန် စစ်ထုတ်မှုတစ်ခုစီကို စစ်ဆေးပါ။
ရည်ညွှန်းချက်တွင် လုပ်ဆောင်ချက်တစ်ခုစီအတွက် အတိုချုံးဖော်ပြချက်နှင့် အသုံးပြုပုံ ဥပမာများ ပါရှိသည်။