လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Parse_url function ကိုခွဲခြမ်းစိတ်ဖြာခြင်း - ပြန်လာသောနယ်ပယ်များသည်အဘယ်အရာကိုအတိအကျဆိုလိုသနည်း။

Parse_url function ကိုခွဲခြမ်းစိတ်ဖြာခြင်း - ပြန်လာသောနယ်ပယ်များသည်အဘယ်အရာကိုအတိအကျဆိုလိုသနည်း။

gitbox 2025-05-26

PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျွန်ုပ်တို့သည်ဒိုမိန်းအမည်များ, လမ်းကြောင်းများ, Parse_url () သည် PHP မှပေးသောအလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ၎င်းသည်ဤလုပ်ငန်းများကိုလျင်မြန်စွာနှင့်တိတိကျကျဖြည့်ဆည်းပေးနိုင်ရန်ကူညီနိုင်သည်။ သို့သော် developer များစွာသည် function မှပြန်လာသောနယ်ပယ်တစ်ခုစီ၏အဓိပ္ပါယ်ကိုနားမလည်ကြပါ။ ဤဆောင်းပါးသည်သင်၏အသုံးပြုမှုကိုအမှန်တကယ်ကျွမ်းကျင်စေရန်ကူညီရန် Parse_URL () ၏ပြန်လာရလဒ်ကိုစနစ်တကျဆန်းစစ်လိမ့်မည်။

1 ။ Parse_URL () function ကို၏အခြေခံအသုံးပြုမှု

Parse_URL () ၏ function သည်အောက်ပါအတိုင်းဖြစ်သည် -

 mixed parse_url(string $url, int $component = -1)

၎င်းသည် url string ကို input ကိုလက်ခံရရှိပြီး URL ၏အစိတ်အပိုင်းများကိုပါ 0 င်သောအပေါင်းအသင်းဆိုင်ရာခင်းကျင်းမှုကိုပြန်လည်ရရှိခဲ့သည်။ ဒုတိယ parameter သည် $ အစိတ်အပိုင်းကို optional ကိုဖြစ်ပါတယ်။ ဒီ parameter သည်သတ်မှတ်ထားသောလျှင်, function ကို URL ၏သက်ဆိုင်ရာအစိတ်အပိုင်း၏တန်ဖိုးကိုသာပြန်ပို့သည်။

အရိုးရှင်းဆုံးဥပမာကိုအရင်ကြည့်ကြစို့။

 $url = 'https://user:[email protected]:8080/path/to/page.php?query=123#section';
$parsed = parse_url($url);
print_r($parsed);

output ရလဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 Array
(
    [scheme] => https
    [host] => gitbox.net
    [port] => 8080
    [user] => user
    [pass] => pass
    [path] => /path/to/page.php
    [query] => query=123
    [fragment] => section
)

2 ။ တစ်ခုချင်းစီကိုလယ်တစ်ခု၏အဓိပ္ပာယ်ကိုအသေးစိတ်ရှင်းလင်းချက်

ဒီခင်းကျင်းမှုတစ်ခုစီရဲ့အဓိပ္ပာယ်ကိုတစ်ခုချင်းစီကိုခွဲခြမ်းစိတ်ဖြာကြပါစို့။

1 ။ အစီအစဉ်

ဥပမာ - HTTP , HTTPS , FTP စသည်ဖြင့် URL ၏ protocol ၏ protocol partol ဖြစ်သည်။ ဥပမာများတွင်

 [scheme] => https

URL သည် HTTPS protocol ကိုအသုံးပြုသည်ကိုဖော်ပြသည်။

2 ။ အိမ်ရှင်

ဆိုလိုသည်မှာအိမ်ရှင်အမည်, များသောအားဖြင့် domain name သို့မဟုတ် IP လိပ်စာဖြစ်သည်။ ကျွန်ုပ်တို့၏ဥပမာတွင် -

 [host] => gitbox.net

ဤသည်ကျွန်ုပ်တို့ဝင်ရောက်လိုသောဆာဗာလိပ်စာအတိအကျဖြစ်သည်။

3 ။ ဆိပ်ကမ်း

ဤသည်ဆက်သွယ်မှုအတွက် port နံပါတ်ဖြစ်ပါတယ်။ အကယ်. port ကို URL တွင်အတိအလင်းသတ်မှတ်ထားသောမပါပါကရလဒ်တွင်လယ်ကွင်းပေါ်လာလိမ့်မည်မဟုတ်ပါ။ ဥပမာအားဖြင့်, ပုံမှန် HTTP ဆိပ်ကမ်းသည် 80 နှင့် HTTPS သည် 443 ဖြစ်သည်။ default non-default non port ကိုမသုံးပါက၎င်းကိုခွဲခြမ်းစိတ်ဖြာလိမ့်မည်။

 [port] => 8080

ဒီဟာက Port 8080 မှတစ်ဆင့်ကျွန်ုပ်တို့ဝင်ရောက်ကြည့်ရှုကြောင်းပြသသည်။

4 ။ အသုံးပြုသူ နှင့် Pass

ဤနယ်ပယ်နှစ်ခုသည်အခြေခံစစ်မှန်ကြောင်းအထောက်အထားပြသခြင်းအတွက်အသုံးပြုသောအသုံးပြုသူအမည်နှင့်စကားဝှက်ကိုကိုယ်စားပြုသည်။ ၎င်းတို့ကို https: // အသုံးပြုသူ - pass @ pass pass pass: pass @ usy ကဲ့သို့သော URLs များတွင်များသောအားဖြင့်ပေါ်လာပါသည်။ ဥပမာ -

 [user] => user
[pass] => pass

ကျေးဇူးပြု. မှတ်သားပါ - USERCAME နှင့် Password ကို URL Plaxt စာသားများတွင် URL Plaxt စာသားများဖြင့်လွှဲပြောင်းရန်မလိုအပ်ပါ။

5 ။ လမ်းကြောင်း

ဤသည်မှာ 0 က်ဘ်ဆိုက်ရှိစာမျက်နှာသို့မဟုတ် interface တစ်ခုသို့လမ်းကြောင်းကဲ့သို့သော URL ရှိအရင်းအမြစ်၏လမ်းကြောင်းအပိုင်းဖြစ်သည်။

 [path] => /path/to/page.php

ဤကွက်လပ်ကိုမကြာခဏ routing, ခွင့်ပြုချက်ထိန်းချုပ်မှုသို့မဟုတ်တည်ငြိမ်သောအရင်းအမြစ်များကိုအသုံးပြုခြင်းတွင်အသုံးပြုလေ့ရှိသည်။

6 ။ စုံစမ်းစစ်ဆေးရေး

ဆိုလိုသည်မှာမေးခွန်းအမှတ်အသားပြုသောမေးခွန်းအမှတ်အသားအပြီး Query String အပိုင်းဖြစ်သည်။

 [query] => query=123

ဤနေရာတွင်မခွဲမထားပါသောမူလ string ကိုပြန်ပို့သည်ကိုသတိပြုပါ။ နောက်ထပ်ပြုပြင်ထုတ်လုပ်ရန်လိုအပ်ပါက၎င်းကို array ထဲသို့ပြောင်းရန် Parse_Str () function ကိုသုံးနိုင်သည်။

 parse_str($parsed['query'], $queryParams);
print_r($queryParams);

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

 Array
(
    [query] => 123
)

7 ။ အပိုင်းအစ

၎င်းသည် URL တွင်ကျောက်ဆူးဖြစ်သည်။ ဆိုလိုသည်မှာ စာမျက်နှာအတွင်း၌ခုန်ရန်အသုံးပြုသည်။

 [fragment] => section

၎င်းကို browser မှဆာဗာသို့ပို့ခြင်းမရှိသေးပါ။ အဓိကအားဖြင့် client စာမျက်နှာထိန်းချုပ်မှုအတွက်အဓိကအသုံးပြုသည်။

3 ။ အမိန့်၏အစိတ်အပိုင်းတစ်ခုထုတ်ယူဖို့ဒုတိယ parameter သည်အသုံးပြုပါ

အကယ်. သင်သည် URL ရှိအချို့သောနယ်ပယ်တစ်ခုကိုသာစိတ်ဝင်စားပါက,

 $host = parse_url($url, PHP_URL_HOST);
echo $host; // ထုတ်လုပ်ခြင်း:gitbox.net

ရရှိနိုင်သည့်အစဉ်အမြဲပါဝင်သည်:

  • php_Url_scheme

  • php_url_host

  • php_url_port

  • php_URL_USER

  • php_url_pass

  • php_Url_path

  • php_url_query

  • php_url_fragment

4 ။ ကြိုတင်ကာကွယ်မှုများနှင့်ဘုံပြ issues နာများ

  1. မပြည့်စုံသော URL : Parse_URL () အဝင် url သည်ပြည့်စုံရမည်ဟုမလိုအပ်ပါ။ ၎င်းသည် /path/page/page.php?queery=123 ကဲ့သို့သောဆွေမျိုးလိပ်စာများကိုလည်းကိုင်တွယ်နိုင်သည်။ သို့သော်သက်ဆိုင်ရာလယ်ကွင်းပျောက်ဆုံးနေနိုင်သည်။

  2. Return Value သည်မှားယွင်းသောအရာဖြစ်သည် ။ နိဂုံးချုပ်ကြိုးကိုမှန်ကန်သော URL သို့မခွဲနိုင်ပါက function ကို မှားယွင်းစွာ ပြန်လည်ရောက်ရှိလာပြီးအမှားခံနိုင်ရည်ကိုဂရုပြုသင့်သည်။

  3. Unicode Domain Name : တရုတ်သို့မဟုတ်အခြား Unicode ဇာတ်ကောင်များပါ 0 င်သော URLs များအတွက် IDN_TO_TASII () ကို အသုံးပြုခြင်းကိုပထမ ဦး စွာ encoding အတွက်အသုံးပြုရန်အကြံပြုသည်။

အကျဉ်းချုပ်

Parse_url () သည် URLs အတွက် PHP တွင်မရှိမဖြစ်လိုအပ်သောကိရိယာတစ်ခုဖြစ်သည်။ Between တစ်ခုချင်းစီ၏အဓိပ္ပာယ်ကိုနားလည်ခြင်းသည်သင်ပြန်လာသည့်နယ်ပယ်တစ်ခုစီ၏အဓိပ္ပာယ်ကိုပိုမိုထိရောက်စွာဖြည့်ဆည်းပေးနိုင်သည်။ ၎င်းသည် routing system တစ်ခုရေးသားခြင်း, jump links များကိုလုပ်ဆောင်ခြင်း, သတိရပါ: Parse_Url () နှင့် Parse_Str_Str_Str_Str_Str_stric) နှင့်ကိုက်ညီခြင်းဖြင့်သင်အလွယ်တကူ URL ကိုအလွယ်တကူဖြည့်ဆည်းပေးနိုင်သည်။