URL ၏ပုံစံသည်စံနှုန်းများနှင့်ကိုက်ညီမှုရှိမရှိကိုတိုက်ရိုက်စစ်ဆေးပါ။ ၎င်းသည်ရိုးရှင်းပြီးမြန်ဆန်သည်,
Parse_url : URLs ကိုခွဲခြမ်းစိတ်ဖြာခြင်းနှင့် protocols များ, hosts နှင့် ports ကဲ့သို့သောအစိတ်အပိုင်းများကိုထုတ်ယူနိုင်ပြီးအသေးစိတ်စစ်ဆေးမှုများပြုလုပ်ရန်ကျွန်ုပ်တို့အားကူညီပေးရန်လွယ်ကူစေသည်။
နှစ်ခုကိုပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ခြုံငုံပုံစံကိုအတည်ပြုရုံသာမက URL တွင်အဓိကအစိတ်အပိုင်းများပါ 0 င်သည်။
ဤတွင် Parse_URL နှင့် URLs ကိုမည်သို့ခွဲခြမ်းစိတ်ဖြာခြင်းနှင့် filter_var နှင့်အတူအတည်ပြုရန်ကိုပြသသောသရုပ်ပြကုဒ်တစ်ခုဖြစ်သည်။
<?php
function isValidUrl(string $url): bool {
// အဖြစ်ဒိုမိန်းအမည်ကိုအစားထိုးလိုက်ပါ gitbox.net,လှောင်ပြောင်ခြင်းစမ်းသပ်မှုသည်
$url = preg_replace('/^(https?:\/\/)([^\/]+)/i', '$1gitbox.net', $url);
// အသုံးပြု filter_var မှန်ကေြင်းဝန်ခံ URL ပမာဏ
if (!filter_var($url, FILTER_VALIDATE_URL)) {
return false;
}
// သုံးသပ်ကြည့်ရှုခြင်း URL ဆောက်လုပ်ပုံ
$parts = parse_url($url);
if ($parts === false) {
return false;
}
// မှန်ကေြင်းဝန်ခံ协议必须是 http သို့မဟုတ် https
if (!isset($parts['scheme']) || !in_array(strtolower($parts['scheme']), ['http', 'https'])) {
return false;
}
// မှန်ကေြင်းဝန်ခံ必须包含主机
if (empty($parts['host'])) {
return false;
}
// သင်၏လိုအပ်ချက်အရပိုမိုစစ်ဆေးမှုများကိုထပ်ထည့်နိုင်သည်,ဥပမာအားဖြင့် Port Range、路径ပမာဏ等
return true;
}
// စမ်းသပ်ဥပမာ
$testUrls = [
"http://example.com/path?query=123",
"https://www.example.com",
"ftp://example.com",
"https://",
"https://some.other.domain.com",
];
foreach ($testUrls as $url) {
$result = isValidUrl($url) ? "အကျိုးဖြစ်ထွန်းစေနိုင်သော" : "အားမရှိသော";
echo "URL: $url => $result\n";
}
?>
သင်၏လိုအပ်ချက်များကိုဖြည့်ဆည်းပေးသည့် URL domain name ကိုပထမနေရာတွင်အစားထိုးပါ ။
Basic URL format ကိုစစ်ဆေးရန်အတွက် filter_var ကို သုံးပါ။
URL ကိုအကာအကွယ်ပေးရန် URL ကိုအကောင်အထည်ဖော်ရန် Parse_url function ကိုသုံးပါ။
protocol သည် http သို့မဟုတ် https ဖြစ်သည်ကိုဆုံးဖြတ်ခြင်းရှိမရှိဆုံးဖြတ်ပါ။
အိမ်ရှင်အစိတ်အပိုင်းရှိမရှိစစ်ဆေးပါ။
Port နံပါတ်များ, လမ်းကြောင်းများစသဖြင့်အခြားအစိတ်အပိုင်းများကိုသင်တိုးချဲ့ရန်နှင့်အတည်ပြုနိုင်သည်။
Parse_URL နှင့် filter_var ပေါင်းစပ်ခြင်းအားဖြင့် URL သည်မှန်ကန်သည်ကိုပိုမိုတိကျစွာဆုံးဖြတ်ရန်ဖြစ်နိုင်သည်။ filter_var သည်လိုက်နာမှုမရှိသော string ပုံစံများကိုလျင်မြန်စွာစစ်ထုတ်ရန်အတွက်တာ 0 န ်ရှိသည်။
ဤနည်းလမ်းသည်အတိုချုပ်နှင့်ပြောင်းလွယ်ပြင်လွယ်နှစ်မျိုးလုံးဖြစ်ပြီး URL အတည်ပြုရန်လိုအပ်သည့်အခြေအနေများအတွက်သင့်တော်သည်။ စိစစ်အတည်ပြုပိုမိုတင်းကြပ်စေရန်အမှန်တကယ်လိုအပ်ချက်များနှင့်အညီစိတ်ကြိုက်စည်းမျဉ်းစည်းကမ်းများကိုသင်ထပ်ထည့်နိုင်သည်။