နေ့စဉ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်အထူးသဖြင့် interface ဖွံ့ဖြိုးတိုးတက်မှု, ဝက်ဘ်စာမျက်နှာခုန်ချခြင်းသို့မဟုတ် link page သို့မဟုတ် link ကို resolution ကိုလုပ်ဆောင်သည့်အခါ URLs တွင် parameters များနှင့်ကိုင်တွယ်ရန်လိုအပ်သည်။ အကယ်. သင်သည် PHP ဘာသာစကားကိုအသုံးပြုနေပါက Parse_Url နှင့် Parse_Str_Str_Str_Str.Str.Str.Str.Str.Str.Str သည် URLs များကိုကိုင်တွယ်ရန်သင်၏လက်နက်မှာသင့်လက်နက်ဖြစ်သည်။
URL မှမေးမြန်းစုံစမ်းမှုအပိုင်းကိုထုတ်ယူရန်အတွက် Parse_Url function ကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကပြသပါမည် ။
Parse_url သည် PHP ၏ built-in function များထဲမှတစ်ခုဖြစ်သည်။
အစီအစဉ် (protocol)
Host (Host အမည်)
ဆိပ်ကမ်း (ဆိပ်ကမ်း)
အသုံးပြုသူ (အသုံးပြုသူအမည်)
Pass (စကားဝှက်)
လမ်းကြောင်း (လမ်းကြောင်း)
Query (Query String)
အပိုင်းအစ (ကျောက်ဆူးအမှတ်)
ဥပမာ -
$url = "https://gitbox.net/search?q=php&sort=desc&page=2";
$parsed = parse_url($url);
print_r($parsed);
ရလဒ်ရလဒ် -
Array
(
[scheme] => https
[host] => gitbox.net
[path] => /search
[query] => q=php&sort=desc&page=2
)
သင်မြင်နိုင်သည့်အတိုင်း Parse_URL သည် url query အပိုင်းကို URL ရှိ Qu = PHP & Sort = Desc & Page = 2 ။ သို့သော်ဤနေဆဲ string ကိုဖြစ်ပါတယ်။ accessable starray ဖြစ်လာဖို့, အခြား function တစ်ခုကိုသုံးရန်လိုအပ်သည် - Parse_Str ။
Parse_Str_Str သည် PHP အတွက်ပါ 0 င်သည့် PHP အတွက်ပါ 0 င်သည့် function တစ်ခုဖြစ်သည်။
ဥပမာ -
$queryString = "q=php&sort=desc&page=2";
parse_str($queryString, $queryArray);
print_r($queryArray);
ရလဒ်ရလဒ် -
Array
(
[q] => php
[sort] => desc
[page] => 2
)
ယခု parameter သည် array တစ်ခုစီတစ်ခုစီဖြစ်လာပြီဆိုလျှင် PHP ကို $ querararray ['q'] သို့မဟုတ် 2 မှတဆင့် $ querarray ['page' မှတဆင့်အလွယ်တကူရနိုင်သည်။
လုပ်ဆောင်ချက်နှစ်ခုကိုအတူတကွအသုံးပြုခြင်းအားဖြင့် Query Parameter Warray ကိုမည်သည့် URL ကိုမဆိုရိုးရှင်းသောနည်းဖြင့်ရယူနိုင်သည်။
$url = "https://gitbox.net/search?q=php&sort=desc&page=2";
// ပထမခြေလှမ်း:အသုံးပြု parse_url ရယူ query ခဲှခြား
$parsedUrl = parse_url($url);
$queryString = isset($parsedUrl['query']) ? $parsedUrl['query'] : '';
// အဆင့် 2:အသုံးပြု parse_str သေတမ်းစာ query strings များကို array သို့ပြောင်းပါ
$queryParams = [];
parse_str($queryString, $queryParams);
// ရလဒ်
print_r($queryParams);
ဤနည်းအားဖြင့် URL တွင်မည်သည့် parameters များကိုမျှမပါ 0 င်ပါစေ URLARATARAMS တွင်အလွယ်တကူ 0 င်ရောက်နိုင်သည်။
အမှန်တကယ်ဖြစ်ရပ်များတွင် URL တွင်မည်သည့် untion ကိုမဆိုစုံစမ်းမှုသတ်မှတ်ချက်မျှမရှိပါကအမှားသည်းခံမှုကိုပြုလုပ်ရန်လိုအပ်သည်။
$url = "https://gitbox.net/home";
$parsedUrl = parse_url($url);
$queryParams = [];
if (isset($parsedUrl['query'])) {
parse_str($parsedUrl['query'], $queryParams);
}
print_r($queryParams); // output ကိုအချည်းနှီးသောခင်းကျင်းဖြစ်ပါတယ်