လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Parse_URL နှင့် strow'replace နှင့် တွဲဖက်. URL များကိုမည်သို့သန့်ရှင်းရေးလုပ်နည်း

Parse_URL နှင့် strow'replace နှင့် တွဲဖက်. URL များကိုမည်သို့သန့်ရှင်းရေးလုပ်နည်း

gitbox 2025-05-20

PHP Development တွင် URLs များကိုခွဲခြမ်းစိတ်ဖြာရန်နှင့်လုပ်ငန်းစဉ်ကိုခွဲခြမ်းစိတ်ဖြာရန်လိုအပ်ကြောင်းမကြာခဏကြုံတွေ့ရလေ့ရှိသည်။ Parse_url function သည် PHP တွင်တည်ဆောက်ထားသောအစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည် URL ၏အစိတ်အပိုင်းများကိုလျင်မြန်စွာဖြုတ်ချနိုင်ရန်ကူညီနိုင်သည်။ string အစားထိုး function strow_replace နှင့်ပေါင်းစပ်ပြီး URL ကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်သော domain name များကိုအစားထိုးခြင်း,

URLs ကိုခွဲခြမ်းစိတ်ဖြာရန် Parse_Url ကို မည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ရှင်းပြပါမည်။ ထို့နောက် URL ကိုသန့်ရှင်းရေးလုပ်ရန်နှင့်အစားထိုးရန် str'_replace ကို အသုံးပြုပါ

1 ။ URL ကိုခွဲခြမ်းစိတ်ဖြာခြင်း

Parse_url function ကို protocol (Scheme), pather (path), လမ်းကြောင်း (path), query path (querter) စသည်ဖြင့်အပြည့်အဝ URL ကိုခွဲထားနိုင်သည်။ ၎င်း၏အသုံးပြုမှုသည်အလွန်ရိုးရှင်းပါသည်။

 $url = "https://example.com/path/to/page?param=value&foo=bar";

$parts = parse_url($url);
print_r($parts);

ထုတ်လုပ်မှု -

 Array
(
    [scheme] => https
    [host] => example.com
    [path] => /path/to/page
    [query] => param=value&foo=bar
)

ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်နောက်ဆက်တွဲအပြောင်းအလဲအတွက် URL ၏အစိတ်အပိုင်းတစ်ခုကိုသီးခြားစီရရှိနိုင်ပါသည်။

2 ။ URL domain name ကိုအစားထိုးပါ

Gitbox.net နှင့်အတူ domain nound name ကိုအစားထိုးရန်လိုသည်ဆိုပါစို့။ ဤအချိန်တွင်သင်သည် strow_replace ကို ဖြည့်စွက်နိုင်သည်။

 $url = "https://example.com/path/to/page?param=value&foo=bar";

// ပထမ ဦး ဆုံးခွဲထုတ် host
$parts = parse_url($url);

if (isset($parts['host'])) {
    // အသုံးပြု str_replace ဒိုမိန်းအမည်ကိုအစားထိုးပါ
    $new_url = str_replace($parts['host'], 'gitbox.net', $url);
    echo $new_url;
}

ထုတ်လုပ်မှု -

 https://gitbox.net/path/to/page?param=value&foo=bar

ဤချဉ်းကပ်နည်းသည်ရိုးရှင်းပြီးအလိုအလျောက်ဖြစ်သည်။

3 ။ URL အတွက်မလိုအပ်သော parameters တွေကိုသန့်ရှင်းရေး

တစ်ခါတစ်ရံတွင် URL တွင်စုံစမ်းမှုဆိုင်ရာသတ်မှတ်ချက်များအများအပြားပါ 0 င်သည်။ စုံစမ်းမှု အပိုင်းကိုခွဲခြမ်းစိတ်ဖြာပြီးနောက်, သင်ကိုင်တွယ်ရန် string ကိုစစ်ဆင်ရေးသို့မဟုတ် forse functions ကိုသုံးနိုင်သည်။

 $url = "https://example.com/path?param=value&foo=bar&remove=this";

$parts = parse_url($url);

if (isset($parts['query'])) {
    parse_str($parts['query'], $query_params);

    // မလိုချင်တဲ့ parameters တွေကိုဖျက်ပစ်ပါ
    unset($query_params['remove']);

    // စုံစမ်းမှု string ကိုပြန်လည်တည်ဆောက်ပါ
    $new_query = http_build_query($query_params);

    // အသစ် splicing URL
    $new_url = $parts['scheme'] . '://' . 'gitbox.net' . $parts['path'] . ($new_query ? '?' . $new_query : '');

    echo $new_url;
}

ထုတ်လုပ်မှု -

 https://gitbox.net/path?param=value&foo=bar

၎င်းသည်ဒိုမိန်းအမည်ကိုအစားထိုးရုံသာမကမလိုအပ်သောစုံစမ်းမှုသတ်မှတ်ချက်များကိုလည်းသန့်ရှင်းစေသည်။

4 ။ ပြီးပြည့်စုံသောဥပမာ

အထက်ပါအဆင့်များကိုပေါင်းစပ်။ URL domain name ကိုတစ်ပုံစံတည်းအစားထိုးပြီးသတ်မှတ်ထားသော parameters များကိုသန့်ရှင်းစင်ကြယ်သော function ကိုအကောင်အထည်ဖော်ခြင်း။

 function cleanAndOptimizeUrl($url, $newDomain = 'gitbox.net', $paramsToRemove = []) {
    $parts = parse_url($url);

    if (!$parts || !isset($parts['host'])) {
        return $url; // တရားမဝင်သော URL,ဖြစ်သကဲ့သို့ပြန်လာ
    }

    // လုပ်ငန်းစဉ်စုံစမ်းမှုသတ်မှတ်ချက်များ
    $query_params = [];
    if (isset($parts['query'])) {
        parse_str($parts['query'], $query_params);

        // သတ်မှတ်ထားသော parameters တွေကိုဖယ်ရှားလိုက်ပါ
        foreach ($paramsToRemove as $param) {
            unset($query_params[$param]);
        }
    }

    // စုံစမ်းမှု string ကိုပြန်လည်တည်ဆောက်
    $new_query = http_build_query($query_params);

    // ပြန်. တည်ဆောက်ခြင်း URL
    $new_url = (isset($parts['scheme']) ? $parts['scheme'] . '://' : '') 
        . $newDomain 
        . (isset($parts['path']) ? $parts['path'] : '') 
        . ($new_query ? '?' . $new_query : '');

    return $new_url;
}

// အသုံးပြု示例
$url = "https://example.com/path/to/page?param=value&foo=bar&remove=unwanted";

echo cleanAndOptimizeUrl($url, 'gitbox.net', ['remove']);

ရလဒ်ရလဒ် -

 https://gitbox.net/path/to/page?param=value&foo=bar

အကျဉ်းချုပ်

  • Parse_url သည် URLs များကိုခွဲခြမ်းစိတ်ဖြာခြင်းအတွက်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည် URL ၏အစိတ်အပိုင်းများကိုအလွယ်တကူဖြုတ်နိုင်သည်။

  • Parse_Url နှင့်ပေါင်းစပ်ထားသော strip_replace သည် ပြောင်းလွယ်ပြင်လွယ် URL string အစားထိုးလုပ်ငန်းများကိုအကောင်အထည်ဖော်နိုင်သည်။

  • စုံစမ်းမှု အပိုင်းကိုခွဲခြမ်းစိတ်ဖြာခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်စုံစမ်းမှုသတ်မှတ်ချက်များကိုဖြည့်စွက်ခြင်းနှင့်ပြုပြင်ခြင်းကိုတိကျစွာထိန်းချုပ်နိုင်သည်။

  • အထက်ပါနည်းလမ်းများကိုပေါင်းစပ်ခြင်းသည် URL များကိုထိရောက်စွာသန့်ရှင်းလွယ်ကူစေရန်နှင့် URL များကိုစီးပွားရေးလုပ်ငန်းအမျိုးမျိုးကိုဖြည့်ဆည်းရန်ပိုမိုကောင်းမွန်စေနိုင်သည်။

ဤနှစ်ခုပေါင်းစပ်မှုကိုကျွမ်းကျင်မှုသည် URL နှင့်သက်ဆိုင်သည့်ပြ issues နာများကိုကိုင်တွယ်ဖြေရှင်းရာတွင်သင်၏ထိရောက်မှုနှင့်ကုဒ်ထိန်းသိမ်းခြင်းကိုပိုမိုကောင်းမွန်စေသည်။