PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျွန်ုပ်တို့သည်ဒိုမိန်းအမည်များ, လမ်းကြောင်းများ, Parse_url () သည် PHP မှပေးသောအလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ၎င်းသည်ဤလုပ်ငန်းများကိုလျင်မြန်စွာနှင့်တိတိကျကျဖြည့်ဆည်းပေးနိုင်ရန်ကူညီနိုင်သည်။ သို့သော် developer များစွာသည် function မှပြန်လာသောနယ်ပယ်တစ်ခုစီ၏အဓိပ္ပါယ်ကိုနားမလည်ကြပါ။ ဤဆောင်းပါးသည်သင်၏အသုံးပြုမှုကိုအမှန်တကယ်ကျွမ်းကျင်စေရန်ကူညီရန် Parse_URL () ၏ပြန်လာရလဒ်ကိုစနစ်တကျဆန်းစစ်လိမ့်မည်။
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
)
ဒီခင်းကျင်းမှုတစ်ခုစီရဲ့အဓိပ္ပာယ်ကိုတစ်ခုချင်းစီကိုခွဲခြမ်းစိတ်ဖြာကြပါစို့။
ဥပမာ - HTTP , HTTPS , FTP စသည်ဖြင့် URL ၏ protocol ၏ protocol partol ဖြစ်သည်။ ဥပမာများတွင်
[scheme] => https
URL သည် HTTPS protocol ကိုအသုံးပြုသည်ကိုဖော်ပြသည်။
ဆိုလိုသည်မှာအိမ်ရှင်အမည်, များသောအားဖြင့် domain name သို့မဟုတ် IP လိပ်စာဖြစ်သည်။ ကျွန်ုပ်တို့၏ဥပမာတွင် -
[host] => gitbox.net
ဤသည်ကျွန်ုပ်တို့ဝင်ရောက်လိုသောဆာဗာလိပ်စာအတိအကျဖြစ်သည်။
ဤသည်ဆက်သွယ်မှုအတွက် port နံပါတ်ဖြစ်ပါတယ်။ အကယ်. port ကို URL တွင်အတိအလင်းသတ်မှတ်ထားသောမပါပါကရလဒ်တွင်လယ်ကွင်းပေါ်လာလိမ့်မည်မဟုတ်ပါ။ ဥပမာအားဖြင့်, ပုံမှန် HTTP ဆိပ်ကမ်းသည် 80 နှင့် HTTPS သည် 443 ဖြစ်သည်။ default non-default non port ကိုမသုံးပါက၎င်းကိုခွဲခြမ်းစိတ်ဖြာလိမ့်မည်။
[port] => 8080
ဒီဟာက Port 8080 မှတစ်ဆင့်ကျွန်ုပ်တို့ဝင်ရောက်ကြည့်ရှုကြောင်းပြသသည်။
ဤနယ်ပယ်နှစ်ခုသည်အခြေခံစစ်မှန်ကြောင်းအထောက်အထားပြသခြင်းအတွက်အသုံးပြုသောအသုံးပြုသူအမည်နှင့်စကားဝှက်ကိုကိုယ်စားပြုသည်။ ၎င်းတို့ကို https: // အသုံးပြုသူ - pass @ pass pass pass: pass @ usy ကဲ့သို့သော URLs များတွင်များသောအားဖြင့်ပေါ်လာပါသည်။ ဥပမာ -
[user] => user
[pass] => pass
ကျေးဇူးပြု. မှတ်သားပါ - USERCAME နှင့် Password ကို URL Plaxt စာသားများတွင် URL Plaxt စာသားများဖြင့်လွှဲပြောင်းရန်မလိုအပ်ပါ။
ဤသည်မှာ 0 က်ဘ်ဆိုက်ရှိစာမျက်နှာသို့မဟုတ် interface တစ်ခုသို့လမ်းကြောင်းကဲ့သို့သော URL ရှိအရင်းအမြစ်၏လမ်းကြောင်းအပိုင်းဖြစ်သည်။
[path] => /path/to/page.php
ဤကွက်လပ်ကိုမကြာခဏ routing, ခွင့်ပြုချက်ထိန်းချုပ်မှုသို့မဟုတ်တည်ငြိမ်သောအရင်းအမြစ်များကိုအသုံးပြုခြင်းတွင်အသုံးပြုလေ့ရှိသည်။
ဆိုလိုသည်မှာမေးခွန်းအမှတ်အသားပြုသောမေးခွန်းအမှတ်အသားအပြီး Query String အပိုင်းဖြစ်သည်။
[query] => query=123
ဤနေရာတွင်မခွဲမထားပါသောမူလ string ကိုပြန်ပို့သည်ကိုသတိပြုပါ။ နောက်ထပ်ပြုပြင်ထုတ်လုပ်ရန်လိုအပ်ပါက၎င်းကို array ထဲသို့ပြောင်းရန် Parse_Str () function ကိုသုံးနိုင်သည်။
parse_str($parsed['query'], $queryParams);
print_r($queryParams);
ထုတ်လုပ်မှု -
Array
(
[query] => 123
)
၎င်းသည် URL တွင်ကျောက်ဆူးဖြစ်သည်။ ဆိုလိုသည်မှာ စာမျက်နှာအတွင်း၌ခုန်ရန်အသုံးပြုသည်။
[fragment] => section
၎င်းကို browser မှဆာဗာသို့ပို့ခြင်းမရှိသေးပါ။ အဓိကအားဖြင့် client စာမျက်နှာထိန်းချုပ်မှုအတွက်အဓိကအသုံးပြုသည်။
အကယ်. သင်သည် 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
မပြည့်စုံသော URL : Parse_URL () အဝင် url သည်ပြည့်စုံရမည်ဟုမလိုအပ်ပါ။ ၎င်းသည် /path/page/page.php?queery=123 ကဲ့သို့သောဆွေမျိုးလိပ်စာများကိုလည်းကိုင်တွယ်နိုင်သည်။ သို့သော်သက်ဆိုင်ရာလယ်ကွင်းပျောက်ဆုံးနေနိုင်သည်။
Return Value သည်မှားယွင်းသောအရာဖြစ်သည် ။ နိဂုံးချုပ်ကြိုးကိုမှန်ကန်သော URL သို့မခွဲနိုင်ပါက function ကို မှားယွင်းစွာ ပြန်လည်ရောက်ရှိလာပြီးအမှားခံနိုင်ရည်ကိုဂရုပြုသင့်သည်။
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 ကိုအလွယ်တကူဖြည့်ဆည်းပေးနိုင်သည်။