0 က်ဘ်အပလီကေးရှင်းများကိုတီထွင်သောအခါ URL parameteters များ၏စီမံခန့်ခွဲမှုသည်အလွန်အသုံးများသောလိုအပ်ချက်ဖြစ်သည်။ သင်သည် parameters တွေကိုအသစ်များထည့်ရန်, လက်ရှိ parameters တွေကိုပြုပြင်ရန်သို့မဟုတ်အချို့သော parameterse ပယ်ဖျက်ရန်လိုအပ်လိမ့်မည်။ PHP တွင် PHP, Parse_URL () နှင့် http_build_Query () တွင်ဤအလုပ်များကိုအလွယ်တကူဖြည့်ဆည်းပေးနိုင်သည့်အလွန်လက်တွေ့လုပ်ဆောင်ချက်နှစ်ခုရှိသည်။
Parse_Url () ကို URLs များကိုဖြိုခွဲရန် Parse_Stret () ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးမည်ဖြစ်ပြီး Parse_Str () နှင့် http_build_Query () နှင့် http_build_Query () ကို အသုံးပြုပါ။
Parse_Url () url ကို scheme (protocol), host (host), လမ်းကြောင်း (Path), Query (Path),
$url = "https://gitbox.net/search?q=php&page=2";
$parts = parse_url($url);
print_r($parts);
ထုတ်လုပ်မှု -
Array
(
[scheme] => https
[host] => gitbox.net
[path] => /search
[query] => q=php&page=2
)
စုံစမ်းမှုဆိုင်ရာသတ်မှတ်ချက်များကိုပြုပြင်ရန်သင် မေးမြန်းခြင်း အပိုင်းကို Associative Array သို့ပထမဆုံးခွဲခြမ်းစိတ်ဖြာရန်လိုအပ်သည်။ Parse_Str () ကို သုံးနိုင်သည်။
parse_str($parts['query'], $queryParams);
ဤအချက်မှာ $ iderparams သည် -
Array
(
[q] => php
[page] => 2
)
ပုံမှန်ခင်းကျင်းခြင်းကဲ့သို့သော parameters များကိုသင်လည်ပတ်နိုင်သည်။
$queryParams['page'] = 3; // parameters တွေကိုပြုပြင်မွမ်းမံ
$queryParams['lang'] = 'zh'; // parameters တွေကိုထည့်ပါ
unset($queryParams['q']); // parameters တွေကိုဖျက်ပါ
parameter သည် string သို့ပြန်သွားရန် http_build_query () ကို သုံးပါ။
$newQuery = http_build_query($queryParams);
ထို့နောက် Query string ကိုမူလ URL သို့ပြန်ကြည့်ပါ။
$newUrl = $parts['scheme'] . '://' . $parts['host'] . $parts['path'] . '?' . $newQuery;
echo $newUrl;
ထုတ်လုပ်မှု -
https://gitbox.net/search?page=3&lang=zh
အောက်ဖော်ပြပါသည်မူလ URL တွင်ဖြတ်သန်းသွားနိုင်သည့်ပြီးပြည့်စုံသော function တစ်ခုဖြစ်သည်။
function modify_url_params($url, $modifications = [], $remove = []) {
$parts = parse_url($url);
parse_str($parts['query'] ?? '', $queryParams);
// ပြုပြင်မွမ်းမံလျှောက်ထားပါ
foreach ($modifications as $key => $value) {
$queryParams[$key] = $value;
}
// parameters တွေကိုဖျက်ပါ
foreach ($remove as $key) {
unset($queryParams[$key]);
}
$newQuery = http_build_query($queryParams);
$newUrl = $parts['scheme'] . '://' . $parts['host'];
if (isset($parts['path'])) {
$newUrl .= $parts['path'];
}
if ($newQuery) {
$newUrl .= '?' . $newQuery;
}
return $newUrl;
}
// နမူနာခေါ်ဆိုမှု
$originalUrl = "https://gitbox.net/search?q=php&page=2";
$newUrl = modify_url_params($originalUrl, ['page' => 1, 'lang' => 'zh'], ['q']);
echo $newUrl;
ထုတ်လုပ်မှု -
https://gitbox.net/search?page=1&lang=zh
Parse_Url () , parse_str () နှင့် http_build_Query) ကိုပေါင်းစပ်ခြင်းအားဖြင့် URL စုံစမ်းမှုသတ်မှတ်ချက်များကိုကျွန်ုပ်တို့ပြောင်းလွယ်ပြင်လွယ်, ပြုပြင်ရန်နှင့်ဖျက်ပစ်နိုင်သည်။ ဤနည်းလမ်းသည်ရှင်းရှင်းလင်းလင်းမသာဖြစ်သော်လည်း redirect links များ, လှုပ်ခတ်ခြင်း, ပြောင်းလဲနေသောစစ်ထုတ်ခြင်းအခြေအနေများကိုကိုင်တွယ်ခြင်းကဲ့သို့သောလက်တွေ့ကျသောအခြေအနေအမျိုးမျိုးအတွက်လည်းသင့်တော်သည်။