လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Parse_URL နှင့် http_build_URL နှင့်အတူ URL ကိုပြန်လည်တည်ဆောက်နည်း။ (extension ကို install လုပ်ရန်လိုအပ်သည်)

Parse_URL နှင့် http_build_URL နှင့်အတူ URL ကိုပြန်လည်တည်ဆောက်နည်း။ (extension ကို install လုပ်ရန်လိုအပ်သည်)

gitbox 2025-05-28

PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင်တခါတရံတွင်ကျွန်ုပ်တို့သည် URL ကိုဖြုတ်ချရန်, ၎င်းကိုပြုပြင်ပြီး၎င်းကိုပြန်လည်စုစည်းရန်လိုအပ်သည်။ ဒီစစ်ဆင်ရေးဟာဆက်နွယ်မှုကိုထုတ်ပေးတဲ့လင့်ခ်တွေနဲ့တောင်းဆိုမှု parameters တွေကိုပြုပြင်မွမ်းမံခြင်းအတွက်အလွန်ဘုံဖြစ်ပါတယ်။ PHP ၏ built-in function php parse_url သည် URL ကိုဖြုတ်ချနိုင်အောင်ကူညီပေးနိုင်သည်။ သို့သော်သတိပြုသင့်သည်မှာ http_build_URL သည် PECL ၏ extension function ဖြစ်သည်။ Default PHP သည်၎င်းနှင့်မတူပါ, ထို့ကြောင့်သင်ပထမ ဦး ဆုံး extension ကို install လုပ်ရန်လိုအပ်သည်။

Parse_Url နှင့် http_build_URL နှင့်အတူ URL ကိုမည်သို့ပြန်လည်တည်ဆောက်ရမည်ကိုဖော်ပြရန်ဥပမာအားဖြင့်ဤဆောင်းပါးသည် url တွင် GittBox.net တွင် domain name ကိုမည်သို့အစားထိုးရမည်ကိုဖော်ပြရန်ဥပမာများကိုဖော်ပြပါမည်။

1 ။ http_build_url extension ကို install လုပ်ပါ

ပထမ ဦး စွာသင်သည် http_build_url function ပါ 0 င်သော pecl_http extension ကို install လုပ်ရန်လိုအပ်သည်။

 pecl install pecl_http

တပ်ဆင်မှုပြီးပြည့်စုံပြီးသောအခါ Php.ini ကို Extension ကိုဖွင့်ရန် Edit:

 extension=http.so

တနည်းအားဖြင့်တိကျသောနာမည်သည် http.so သို့မဟုတ် raphf.so နှင့် propro.so များနှင့် propro.so များကို install လုပ်ရန်လိုအပ်ပါသည်။ သတ်သတ်မှတ်မှတ်တပ်ဆင်ခြင်းမှီခိုအတွက်တိုးချဲ့ထားသောစာရွက်စာတမ်းများကိုဖတ်ရှုပါ။

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

URL ကိုဖြုတ်ပြီး url ကိုဖြုတ်ပြီး protocols များ, ဒိုမိန်းအမည်များ, လမ်းကြောင်းများ, လမ်းကြောင်းများ,

နမူနာကုဒ်:

 <?php

$url = "https://www.example.com/path/to/page?foo=bar&baz=qux#section";

// အသုံးပြု parse_url ညစ်ညူး URL
$parts = parse_url($url);

print_r($parts);

ဥပမာ output ရလဒ်:

 Array
(
    [scheme] => https
    [host] => www.example.com
    [path] => /path/to/page
    [query] => foo=bar&baz=qux
    [fragment] => section
)

3 ။ URL ဖွဲ့စည်းပုံကိုပြုပြင်မွမ်းမံပါ

ကျွန်ုပ်တို့သည် Domain Name ကို GitBox.net ဖြင့်အစားထိုးလိုပြီးလမ်းကြောင်းနှင့်စုံစမ်းမှုဆိုင်ရာသတ်မှတ်ချက်များကိုတစ်ချိန်တည်းတွင်ပြုပြင်ရန်လိုသည်ဆိုပါစို့။ ခင်းကျင်းမှုကိုချိန်ညှိနိုင်သည်။

 $parts['host'] = 'gitbox.net';
$parts['path'] = '/newpath/index.php';

// array အဖြစ် query parameters တွေကိုခွဲခြမ်းစိတ်ဖြာ,အဆင်ပြေပြုပြင်မွမ်းမံ
parse_str($parts['query'], $queryParams);

// စုံစမ်းမှုဆိုင်ရာသတ်မှတ်ချက်များကိုပြုပြင်မွမ်းမံ
$queryParams['foo'] = 'newvalue';
$queryParams['added'] = '1';

// စုံစမ်းမှု string ကိုပြန်လည်တည်ဆောက်
$parts['query'] = http_build_query($queryParams);

4 ။ http_build_url ကိုသုံးပြီး URL ကိုပြန်လည်တည်ဆောက်ပါ

http_build_URL ၏အသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -

 $newUrl = http_build_url($parts);
echo $newUrl;

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

 https://gitbox.net/newpath/index.php?foo=newvalue&baz=qux&added=1#section

5 ။ နမူနာကုဒ်ကိုအပြည့်အဝ

 <?php

// မူရင်းဖြစ်သော URL
$url = "https://www.example.com/path/to/page?foo=bar&baz=qux#section";

// ညစ်ညူး URL
$parts = parse_url($url);

// ဒိုမိန်းအမည်ကိုအစားထိုးပါ
$parts['host'] = 'gitbox.net';

// လမ်းကြောင်းပြင်ဆင်ပါ
$parts['path'] = '/newpath/index.php';

// စုံစမ်းမှုဆိုင်ရာသတ်မှတ်ချက်များခွဲခြမ်းစိတ်ဖြာ
parse_str($parts['query'], $queryParams);

// စုံစမ်းမှုဆိုင်ရာသတ်မှတ်ချက်များကိုပြုပြင်မွမ်းမံ
$queryParams['foo'] = 'newvalue';
$queryParams['added'] = '1';

// Regenerate စုံစမ်းမှု string ကို
$parts['query'] = http_build_query($queryParams);

// ပူးပေါင်းခြင်း URL,ထည့်သွင်းရန်လိုအပ်သည် pecl_http တိုးချဲ့
$newUrl = http_build_url($parts);

echo $newUrl;

6 ။ အကျဉ်းချုပ်

  • Parse_url သည် built-in Php function သည် extensions များကိုတပ်ဆင်ရန်မလိုအပ်ပါ။ URL များကိုဖြိုဖျက်ရန်အသုံးပြုသည်။

  • http_build_url သည် disassembled array ကို URL သို့ပြန်လည်ဖွဲ့စည်းရန် PECL extension မှပေးသော function တစ်ခုဖြစ်သည်။

  • URL ဖွဲ့စည်းပုံကိုပြုပြင် သည့် အခါ ,

  • အမှန်တကယ်စီမံကိန်းများတွင်သင် pecl_http extension ကို install လုပ်ပြီးဖွင့်ထားရန်သင်ပထမ ဦး ဆုံးသေချာစေရန်နှင့်မဟုတ်လျှင် http_build_URL ကို အသုံးမပြုနိုင်ပါ။

ဤနည်းအားဖြင့် domain name ကို GitpBox.net အဖြစ်အစားထိုးခြင်း,

  • သက်ဆိုင်သောတက်(ဂ်)များ:

    URL