လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> http_build_Query နှင့် $ _get Array များကို Closing URL parameters များကိုမည်သို့ပေါင်းစပ်မည်နည်း။

http_build_Query နှင့် $ _get Array များကို Closing URL parameters များကိုမည်သို့ပေါင်းစပ်မည်နည်း။

M66 2025-07-08

PHP တွင် URL parameters များကိုကိုင်တွယ်ခြင်းသည်အထူးသဖြင့် URL များကိုကွဲပြားသောလိုအပ်ချက်များနှင့်အညီ URL များကိုပြောင်းလဲရန်နှင့်ပြုပြင်ရန်လိုအပ်သည်။ http_build_Query function နှင့် $ _get ခင်းကျင်းမှုသည် URL parameters များကိုအလွယ်တကူတည်ဆောက်ရန်အထောက်အကူပြုသောအသုံးများသောကိရိယာနှစ်ခုဖြစ်သည်။ ယနေ့တွင်ကျွန်ုပ်တို့သည် splice လုပ်ရန်လွယ်ကူစွာအသုံးပြုရန်နှင့် URL parameters များကိုကိုင်တွယ်ရန်နှစ် ဦး စလုံးကိုမည်သို့ပေါင်းစပ်ရမည်ကိုဆွေးနွေးပါမည်။

1 ။ မိတ်ဆက် http_build_Query function ကိုမိတ်ဆက်

http_build_Query သည် PHP တွင်တွဲဖက်လုပ်ဆောင်မှုတစ်ခုဖြစ်ပြီး Associative Array သို့မဟုတ် Multiensional Array ကိုယူပြီး URL စုံစမ်းမှု string တစ်ခုသို့ပြောင်းလဲသည်။ ဤလုပ်ဆောင်ချက်သည်သင့်အားလျင်မြန်စွာ query parameters များကိုမြန်မြန်ဆန်ဆန်ထုတ်လုပ်ရန်သာမက URL စံနှုန်းများနှင့်ကိုက်ညီမှုရှိကြောင်းသေချာစေရန်လည်း urls များကိုအလိုအလျောက် undod များကိုအလိုအလျောက် encodes များကိုလည်းအလိုအလျောက် encodes တို့ကိုတပ်ဆင်သည်။

function syntax:

 <span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-title function_ invoke__">http_build_query</span></span><span> ( </span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-variable">$query_data</span></span><span> [, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$numeric_prefix</span></span><span> = </span><span><span class="hljs-string">""</span></span><span> [, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$arg_separator</span></span><span> = </span><span><span class="hljs-string">"&amp;"</span></span><span> ]] )
</span></span>
  • $ query_Data : ကီးတန်ဖိုးအတွဲများပါ 0 င်သည့်အပေါင်းအသင်းဆိုင်ရာခင်းကျင်းမှုတစ်ခုမှာ query string တစ်ခုသို့ပြောင်းလဲလိမ့်မည်။

  • $ Numeric_Prefix : ခင်းကျင်းထဲမှာသော့တွေမှာနံပါတ်များဖြစ်လျှင်ထိုသော့များကိုရှေ့ဆက်ရန်သင်ရွေးချယ်နိုင်သည်။

  • $ arg arg_separator - parameters တွေကိုအကြားခွဲနေသူကိုသတ်မှတ်ပါတယ်

2 ။ Splice URL parameters တွေကို http_build_query ကို သုံးပါ

ငါတို့မှာ parameters တွေကိုပါတဲ့ခင်းကျင်းမှုတစ်ခုရှိတယ်ဆိုပါစို့။ ဤအချိန်တွင် http_build_query က ကူညီနိုင်သည်။

ဥပမာ -

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$params</span></span><span> = [
    </span><span><span class="hljs-string">'search'</span></span><span> =&gt; </span><span><span class="hljs-string">'PHP'</span></span><span>,
    </span><span><span class="hljs-string">'page'</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>,
    </span><span><span class="hljs-string">'sort'</span></span><span> =&gt; </span><span><span class="hljs-string">'asc'</span></span><span>,
    </span><span><span class="hljs-string">'category'</span></span><span> =&gt; </span><span><span class="hljs-string">'programming'</span></span><span>
];

</span><span><span class="hljs-comment">// splicing URL တေးရေး</span></span><span>
</span><span><span class="hljs-variable">$queryString</span></span><span> = </span><span><span class="hljs-title function_ invoke__">http_build_query</span></span><span>(</span><span><span class="hljs-variable">$params</span></span><span>);

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$queryString</span></span><span>; 
</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း: search=PHP&amp;page=2&amp;sort=asc&amp;category=programming</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

ဤနည်းလမ်းအားဖြင့်ကျွန်ုပ်တို့သည်စံသတ်မှတ်ချက် string ကိုအလွယ်တကူထုတ်လုပ်နိုင်သည်။

3 ။ question url ကို query string ကိုထည့်ပါ

တစ်ခါတစ်ရံတွင်ကျွန်ုပ်တို့သည်ရှိပြီးသား query string ကိုရှိပြီးသားအခြေခံ URL သို့ထည့်သွင်းရန်လိုအပ်သည်။ query string ကိုနောက်ခံ URL သို့ဖွင့်ရုံဖြင့်၎င်းကိုရနိုင်သည်။

ဥပမာ -

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$baseURL</span></span><span> = </span><span><span class="hljs-string">"https://example.com/products?"</span></span><span>;
</span><span><span class="hljs-variable">$params</span></span><span> = [
    </span><span><span class="hljs-string">'search'</span></span><span> =&gt; </span><span><span class="hljs-string">'PHP'</span></span><span>,
    </span><span><span class="hljs-string">'page'</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>,
    </span><span><span class="hljs-string">'sort'</span></span><span> =&gt; </span><span><span class="hljs-string">'asc'</span></span><span>,
    </span><span><span class="hljs-string">'category'</span></span><span> =&gt; </span><span><span class="hljs-string">'programming'</span></span><span>
];

</span><span><span class="hljs-comment">// splicing查询字符串</span></span><span>
</span><span><span class="hljs-variable">$queryString</span></span><span> = </span><span><span class="hljs-title function_ invoke__">http_build_query</span></span><span>(</span><span><span class="hljs-variable">$params</span></span><span>);

</span><span><span class="hljs-comment">// ပြည့်စုံသော URL</span></span><span>
</span><span><span class="hljs-variable">$fullURL</span></span><span> = </span><span><span class="hljs-variable">$baseURL</span></span><span> . </span><span><span class="hljs-variable">$queryString</span></span><span>;

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$fullURL</span></span><span>;
</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း: https://example.com/products?search=PHP&amp;page=2&amp;sort=asc&amp;category=programming</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

4 ။ _get ခင်းကျင်းကို သုံး. URL parameters တွေကို dynamally process

$ _get သည် PHP hypergglobal array သည် URL တွင်စုံစမ်းမှု string တစ်ခု၏တန်ဖိုးကိုရရှိသည်။ အသုံးပြုသူသည် query parameterser နှင့်အတူ URL တစ်ခုကိုဝင်ရောက်ကြည့်ရှုသောအခါ $ _get သည် ဤ parameters တွေကိုအလိုအလျောက်ခွဲခြမ်းစိတ်ဖြာသည်။ ဥပမာ https://xample.com/?dochpping&page= သို့ ဝင်ရောက်ကြည့်ရှုသောအခါသင် ရရှိသော တန်ဖိုးကို $ _GET ['Search') ၏တန်ဖိုးကိုရနိုင်သည်။ ]

ဥပမာ -

ကျွန်ုပ်တို့သည်လက်ရှိ URL တွင် parameters အားလုံးကိုရလိုပြီးလိုအပ်သည့်အချက်များအားလုံးကိုပြုပြင်ပြောင်းလဲရန်သို့မဟုတ်ထည့်ရန်လိုအပ်သည်ဆိုပါစို့။

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// လက်ရှိကြောင်းယူဆ URL အတွက်: https://example.com/?search=PHP&amp;page=2</span></span><span>
</span><span><span class="hljs-comment">// $_GET 数组会自动包含查询တေးရေး</span></span><span>
</span><span><span class="hljs-variable">$currentParams</span></span><span> = </span><span><span class="hljs-variable">$_GET</span></span><span>;

</span><span><span class="hljs-comment">// 添加新的တေးရေး</span></span><span>
</span><span><span class="hljs-variable">$currentParams</span></span><span>[</span><span><span class="hljs-string">'sort'</span></span><span>] = </span><span><span class="hljs-string">'desc'</span></span><span>;

</span><span><span class="hljs-comment">// အသုံးပြု http_build_query splicing更新后的查询字符串</span></span><span>
</span><span><span class="hljs-variable">$newQueryString</span></span><span> = </span><span><span class="hljs-title function_ invoke__">http_build_query</span></span><span>(</span><span><span class="hljs-variable">$currentParams</span></span><span>);

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$newQueryString</span></span><span>;
</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း: search=PHP&amp;page=2&amp;sort=desc</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

5 ။ URL parameter ကိုပြုပြင်မွမ်းမံပါ

တခါတရံတွင်ကျွန်ုပ်တို့သည် query string တစ်ခုလုံးကိုပြန်လည်တည်ဆောက်မည့်အစား URL တွင်အချို့သော parameter ကိုပြုပြင်ချင်ကြသည်။ သင်နှင့်သက်ဆိုင်သောသော့ကို $ _GET ခင်းကျင်းအတွင်းပြောင်းလဲပြီး http_build_Query ကို အသုံးပြု. အသစ်တစ်ခုကိုဖွင့်နိုင်သည်။

ဥပမာ -

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// လက်ရှိကြောင်းယူဆ URL အတွက်: https://example.com/?search=PHP&amp;page=2</span></span><span>
</span><span><span class="hljs-comment">// 获取当前တေးရေး</span></span><span>
</span><span><span class="hljs-variable">$currentParams</span></span><span> = </span><span><span class="hljs-variable">$_GET</span></span><span>;

</span><span><span class="hljs-comment">// 修改某个တေးရေး</span></span><span>
</span><span><span class="hljs-variable">$currentParams</span></span><span>[</span><span><span class="hljs-string">'page'</span></span><span>] = </span><span><span class="hljs-number">3</span></span><span>;

</span><span><span class="hljs-comment">// အသုံးပြု http_build_query အသစ်တစ်ခုကိုစုံစမ်းမှု string ကိုထုတ်လုပ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$newQueryString</span></span><span> = </span><span><span class="hljs-title function_ invoke__">http_build_query</span></span><span>(</span><span><span class="hljs-variable">$currentParams</span></span><span>);

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$newQueryString</span></span><span>;
</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း: search=PHP&amp;page=3</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

6 ။ အဆင့်မြင့်အသုံးပြုမှု: Multidimensional Arrays ကိုင်တွယ်

http_build_Query သည် Multidimensional Array များကိုလည်းထောက်ပံ့သည်။ သင့်တွင်အသိုက်ခင်းကျင်းမှုရှိပါကလုပ်ဆောင်မှုသည်အလိုအလျောက်ပြားစေပြီးသတ်မှတ်ချက်များနှင့်ကိုက်ညီသောစုံစမ်းမှု string ကိုထုတ်လုပ်လိမ့်မည်။

ဥပမာ -

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$params</span></span><span> = [
    </span><span><span class="hljs-string">'search'</span></span><span> =&gt; </span><span><span class="hljs-string">'PHP'</span></span><span>,
    </span><span><span class="hljs-string">'filters'</span></span><span> =&gt; [
        </span><span><span class="hljs-string">'category'</span></span><span> =&gt; </span><span><span class="hljs-string">'programming'</span></span><span>,
        </span><span><span class="hljs-string">'price'</span></span><span> =&gt; </span><span><span class="hljs-string">'low'</span></span><span>
    ]
];

</span><span><span class="hljs-comment">// အသုံးပြု http_build_query splicing多维数组</span></span><span>
</span><span><span class="hljs-variable">$queryString</span></span><span> = </span><span><span class="hljs-title function_ invoke__">http_build_query</span></span><span>(</span><span><span class="hljs-variable">$params</span></span><span>);

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$queryString</span></span><span>;
</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း: search=PHP&amp;filters%5Bcategory%5D=programming&amp;filters%5Bprice%5D=low</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

ဤဥပမာတွင် http_build_Query သည် အသိုက်ထည့်သွင်းထားသော array များကိုအလိုအလျောက်ဖြစ်စေသည်။ URL စုံစမ်းမှု string format နှင့်ကိုက်ညီသောရလဒ်များကိုထုတ်ပေးသည်။

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

http_build_Query နှင့် $ _get ခင်းကျင်းမှုများသည် PHP တွင်အလွန်လက်တွေ့ကျသောကိရိယာများဖြစ်သည်။ ဤကိရိယာများကိုကျိုးကြောင်းဆီလျော်စွာအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် URL parameters တွေကိုထိထိရောက်ရောက် Splice Splice Splice splice splice parameters တွေကိုပြုပြင်မွမ်းမံခြင်း, ဤကျွမ်းကျင်မှုများကိုကျွမ်းကျင်ခြင်းကသင့်အားဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်အတွင်းအားထုတ်မှုတစ်ဝက်ကိုနှစ်ကြိမ်ရရှိရန်ခွင့်ပြုလိမ့်မည်။