လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> [PHP ပရိုဂရမ်တွင် HTML အဖွဲ့အစည်းများမှမှန်ကန်သောထွက်ပေါက်အာဏာကိုအကောင်အထည်ဖော်ရန် Get_Html_Translation_table function ကိုမည်သို့အသုံးပြုရမည်နည်း။

[PHP ပရိုဂရမ်တွင် HTML အဖွဲ့အစည်းများမှမှန်ကန်သောထွက်ပေါက်အာဏာကိုအကောင်အထည်ဖော်ရန် Get_Html_Translation_table function ကိုမည်သို့အသုံးပြုရမည်နည်း။

gitbox 2025-06-11

PHP တွင် HTML အဖွဲ့အစည်းများမှလွတ်မြောက်ခြင်းသည်အထူးသဖြင့်ဝက်ဘ်စာမျက်နှာများကိုတက်ကြွစွာထုတ်ပေးသောအခါအထူးလိုအပ်ချက်တစ်ခုဖြစ်သည်။ သင့်လျော်သောလွတ်မြောက်မှုမရှိပါက XSS တိုက်ခိုက်မှုများကဲ့သို့သောလုံခြုံရေးပြ issues နာများဖြစ်ပေါ်နိုင်သည်။ Get_Htmml_Translation_table function သည် HTML အဖွဲ့အစည်းများ၏မှန်ကန်သောထွက်ပေါ်လာခြင်းကိုအကောင်အထည်ဖော်ရန်ကျွန်ုပ်တို့အားကူညီနိုင်သည့်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။

1 ။ HTML entity ဆိုတာဘာလဲ။

HTML အဖွဲ့အစည်းများသည်အထူး အက္ခရာများ ဖြစ်သည် အချို့သောတိကျသောသင်္ကေတသို့မဟုတ်ဇာတ်ကောင်ကိုယ်စားပြု။ ဥပမာအားဖြင့်:

  • & amp; ကိုယ်စားပြု & သင်္ကေတ

  • & lt; < သင်္ကေတကိုကိုယ်စားပြုတယ်

  • & GT; ကိုယ်စားလှယ် > သင်္ကေတများ

  • "ကိုယ်စားလှယ် " သင်္ကေတ

  • & apos; '' သင်္ကေတကိုကိုယ်စားပြုတယ်

အသုံးပြုသူ input data ကို HTML တွင်ထည့်သွင်းသောအခါဤအထူးအက္ခရာများကိုမှန်ကန်စွာလွတ်မြောက်ရန်သေချာစေရမည်။

2 ။ get_html_translation_table function ကိုခြုံငုံသုံးသပ်ချက်

Get_Html_translation_table function သည် html entities နှင့်စာလုံးကိုက်ညီမှုများပါ 0 င်သည့်မြေပုံ table ကိုပြန်ပို့နိုင်သည်။ ကျွန်ုပ်တို့သည်တိကျသောစာလုံးများမှလွတ်မြောက်ရန်ဤဇယားကိုသုံးနိုင်သည်။

function ရှေ့ပြေးပုံစံ:

 get_html_translation_table(int $table = HTML_ENTITIES, int $flags = ENT_COMPAT, string|null $encoding = null): array

parameter သည်ဖော်ပြချက်:

  • $ ဇယား - ဘာသာပြန်စားပွဲပေါ်မှာပြန်ကျသွားတယ်။ ဘုံတန်ဖိုးများမှာ:

    • HTML_ENTITIONS : HTML အဖွဲ့အစည်းများအားလုံးကိုပြန်ပို့သည်။

    • html_specialchars : ဘုံ html အထူးအက္ခရာများကိုပြန်ပို့သည်။

  • $ အလံ - လွတ်မြောက်ရန်မည်သို့သတ်မှတ်သည်။ ဘုံတန်ဖိုးများမှာ:

    • Ent_Compat : နှစ်ဆကိုးကားထားပေမယ့်တစ် ဦး တည်းကိုးကားထိန်းသိမ်းထားသည်။

    • ent_quotes : နှစ်ဆနှင့်တစ်ခုတည်းကိုးကားမှလွတ်မြောက်ရန်။

    • ent_noquotes : အဘယ်သူမျှမကိုးကားအမှတ်အသားများမှထွက်ပြေးလွတ်မြောက်။

  • $ encoding : ဇာတ်ကောင် encoding အဖြစ်သတ်မှတ်ပါတယ်။ ပုံမှန်ပတ် 0 န်းကျင်၏ဇာတ်ကောင် encoding ကို အသုံးပြု. ပုံမှန်အားဖြင့် NULL ဖြစ်သည်။

3 ။ ဥပမာကိုသုံးပါ

3.1 ။ HTML ENTITY ဘာသာပြန်စာသားကိုရယူပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည် Get_Html_Translation_table function မှတဆင့် HTML entity ၏ဘာသာပြန်စာသားကိုရနိုင်သည်။

 <?php
$table = get_html_translation_table(HTML_ENTITIES);
print_r($table);
?>

output ကိုကြည့်ပါလိမ့်မယ်:

 Array
(
    [&] => &amp;
    ["] => &quot;
    ['] => &apos;
    [<] => &lt;
    [>] => &gt;
    [ ] => &nbsp;
    ...
)

ဤခင်းကျင်းမှုရှိဇာတ်ကောင်တစ် ဦး စီသည်သက်ဆိုင်ရာ HTML entity အဖြစ်မှလွတ်မြောက်သည်။

3.2 ။ ဇာတ်ကောင်များလွတ်မြောက်ရန်

ကျွန်ုပ်တို့တွင်အထူးအက္ခရာများပါ 0 င်သော string တစ်ခုရှိသည်ဆိုပါစို့။ Get_Html_Translation_table နှင့်ပေါင်းစပ်ထားသော strtr function ကိုကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။

 <?php
$string = "This is a <div> tag & a \"quote\" example!";
$table = get_html_translation_table(HTML_SPECIALCHARS, ENT_QUOTES);
$escaped_string = strtr($string, $table);

echo $escaped_string;
?>

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

 This is a &lt;div&gt; tag &amp; a &quot;quote&quot; example!

သင်တွေ့ရသည့်အတိုင်း HTML အထူးအက္ခရာများ (ဥပမာ < , > နှင့် & , " ) ကိုမှန်ကန်စွာထွက်ပြေးတိမ်းရှောင်ခဲ့ရသည်။

3.3 ။ စိတ်ကြိုက် URL ကိုသုံးပါ

လက်တွေ့ကျသောအပလီကေးရှင်းများတွင် URL မှလွတ်မြောက်မှုသည်ဆေးထိုးတိုက်ခိုက်မှုများကိုရှောင်ရှားရန်လိုအပ်နိုင်သည်။ သင်၏ URL လိပ်စာတွင်အထူးအက္ခရာများပါ 0 င်ပါက၎င်းတို့အားသင်ကိုယ်တိုင်မှလွတ်မြောက်ရန်လိုအပ်သည်။ ဥပမာအားဖြင့်, အောက်ပါ URL ကိုတိကျသောဒိုမိန်းအမည်နှင့်အစားထိုးနိုင်သည်။

 <?php
$url = "http://example.com/?query=hello&name=world";
$url = str_replace("example.com", "gitbox.net", $url);
echo $url;
?>

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

 http://gitbox.net/?query=hello&name=world

ဤနည်းအားဖြင့် Domain Name ကိုမူရင်း URL တွင် Gitbox.net ရှိမူလ URL တွင်အစားထိုးသည်။ URL ၏လုံခြုံရေးကိုသေချာစေသည်။

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

Get_Html_Translation_table function ကိုအသုံးပြုခြင်း strtr သို့မဟုတ်အခြား PHP string struction လုပ်ဆောင်ချက်များနှင့်ပေါင်းစပ်ပြီးကျွန်ုပ်တို့သည် HTML အဖွဲ့အစည်းများအားအလားအလာရှိသောလုံခြုံရေးအန္တရာယ်များကိုကာကွယ်ရန်ထိရောက်စွာလွတ်မြောက်နိုင်ကြသည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်အသုံးပြုသူမှထည့်သွင်းထားသောအထူးအက္ခရာများကိုမှန်ကန်စွာထွက်ပြေးတိမ်းရှောင်ရန်သေချာစေရန်အထူးသဖြင့်ပြင်ပမှထည့်သွင်းထားသည့်အချက်အလက်များကိုလုပ်ဆောင်သောအခါ။

  • သက်ဆိုင်သောတက်(ဂ်)များ:

    HTML