လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP function-htmlspecialchars () - strings အတွက်အထူးအက္ခရာများမှလွတ်မြောက်ရန်

PHP function-htmlspecialchars () - strings အတွက်အထူးအက္ခရာများမှလွတ်မြောက်ရန်

M66 2025-06-05

PHP တွင် htmlspecialchars () function ကိုအသုံးပြုခြင်းနှင့်အသုံးပြုမှုအသေးစိတ်ရှင်းပြချက်

0 က်ဘ်ဆိုက်မဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်အတွင်းသုံးစွဲသူများမှထည့်သွင်းထားသောအကြောင်းအရာကိုစာမျက်နှာပြသခြင်းသို့မဟုတ်ဒေတာအပြန်အလှန်ဆက်သွယ်မှုအတွက်မကြာခဏအသုံးပြုသည်။ အန္တရာယ်ရှိသောဇာတ်ညွှန်းထိုးခြင်းကဲ့သို့သောလုံခြုံရေးဆိုင်ရာပြ issues နာများကိုကာကွယ်ရန် developer များသည်ဤထည့်သွင်းမှုအချက်အလက်များကိုတင်းကြပ်စွာလုပ်ဆောင်ရမည်။ HTMLSPECialCHARS () သည် STRINGS တွင်အထူးဇာတ်ကောင်များမှလွတ်မြောက်ရန် PHP တွင်အရေးကြီးသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။

function syntax ဖွဲ့စည်းပုံ

 
string htmlspecialchars(
    string $string,
    int $flags = ENT_COMPAT | ENT_HTML401,
    string $encoding = "UTF-8",
    bool $double_encode = true
)
  • $ string : လိုအပ်ပြီးလွတ်မြောက်ရန် string ကို။
  • Flags : Optional, ကိုးကားချက်များကိုမည်သို့ကိုင်တွယ်ရမည်ကိုသတ်မှတ်ခြင်း , ent_html401
  • $ encoding : optional ကို encoding encoding ကိုသတ်မှတ်ပြီး utf-8 ကိုပုံမှန်အားဖြင့်သုံးပါ။
  • $ double_encode : encoded အဖွဲ့အစည်းများ၏ encoding encoding ကို encoded ရန်ခွင့်ပြုမထား, setting ကို setting ။ ပုံသေတန်ဖိုးမှာမှန်ကန်သည်။

ဇာတ်ကောင်အမျိုးအစား

ဤလုပ်ဆောင်မှုသည် HTML အဖွဲ့အစည်းများအဖြစ်အောက်ပါအထူးအက္ခရာများမှလွတ်မြောက်သည်။

  • & ကူးပြောင်း &
  • " to ပြောင်းရွှေ့ "
  • ' to's to ' (အချို့ configurations များတွင်)
  • < သို့ ပြောင်းရန်
  • >> >>

ဤလွတ်မြောက်မှုများမှတဆင့်, browser တွင်ကွပ်မျက်ခြင်းမှအန္တရာယ်ရှိသော scripts ကိုထိရောက်စွာတားဆီးနိုင်သည်။

အသုံးပြုမှုဥပမာ

ဥပမာ 1 - အခြေခံအထူးဇာတ်ကောင်ထွက်ပေါက်

 
$input = '<script>alert("Hello!");</script>';
$output = htmlspecialchars($input);
echo $output;
// ထုတ်လုပ်ခြင်း:<script>alert("Hello!");</script>

ဤဥပမာတွင် HTML tags များကိုအန္တရာယ်ကင်းစွာထွက်ပြေးတိမ်းရှောင်နေပြီး browser သည်၎င်းတို့အား scripts အစားစာသားအတိုင်းကွပ်မျက်သည်။

ဥပမာ 2 - တစ်ခုတည်းနှင့်နှစ်ဆကိုးကားခြင်း

 
$input = 'I\'m "John"';
$output = htmlspecialchars($input, ENT_QUOTES);
echo $output;
// ထုတ်လုပ်ခြင်း:I'm "John"

ent_quotes parameter သည် ent_quotes parameter ကိုသတ်မှတ်ပြီးနောက်တစ်ကိုယ်ရေနှင့်နှစ်ဆကိုးကားချက်နှစ်ခုစလုံးမှလွတ်မြောက်လိမ့်မည်။

ဥပမာ 3: ဇာတ်ကောင် encoding ကိုသတ်မှတ်ပါ

 
$input = 'တရုတ်စာလုံးများ';
$output = htmlspecialchars($input, ENT_QUOTES, 'GBK');
echo $output;
// ထုတ်လုပ်ခြင်း:တရုတ်စာလုံးများ

အကယ်. သတ်မှတ်ထားသောစာလုံး Encoding သည် input အချက်အလက်များ၏အမှန်တကယ် encoding နှင့်ကိုက်ညီပါကတရုတ်ကဲ့သို့သော Multi-byte အက္ခရာများသည်မှားယွင်းစွာလွတ်မြောက်လိမ့်မည်မဟုတ်ပါ။

ဥပမာ 4 - နှစ်ဆလွတ်မြောက်ရန်တားမြစ်သည်

 
$input = 'special & character';
$output = htmlspecialchars($input, ENT_QUOTES, 'UTF-8', false);
echo $output;
// ထုတ်လုပ်ခြင်း:special & character

$ double_encode ကို မှားယွင်းစွာ သတ်မှတ်ခြင်းသည် encoded encoded ကို ထပ်မံ. ထွက်ပြေးတိမ်းရှောင်ခြင်းမှလွတ်မြောက်ရန်နှင့် output content ကိုဖတ်နိုင်သည်။

အကျဉ်းချုပ်

htmlspecialchars () သည် PHP မှအသုံးပြုသူထည့်သွင်းမှု၏လုံခြုံမှုရလဒ်ကိုသေချာစေရန် PHP မှပေးသောအရေးကြီးသောလုပ်ဆောင်ချက်ဖြစ်သည်။ parameters တွေကိုကျိုးကြောင်းဆီလျော်စွာသတ်မှတ်ခြင်းအားဖြင့်ကွဲပြားခြားနားသော encoding နှင့် Escape လိုအပ်ချက်များပြောင်းလွယ်ပြင်လွယ်တုံ့ပြန်ခြင်းသည်လျှောက်လွှာ၏လုံခြုံရေးကိုထိထိရောက်ရောက်တိုးတက်စေနိုင်သည်။ ထုတ်လုပ်ခြင်းပုံစံ input နှင့် dynamic ပါဝင်မှု output ကိုလုပ်ဆောင်ခြင်းကဲ့သို့သောဖြစ်ရပ်များတွင် XSS တိုက်ခိုက်မှုများကိုရှောင်ရှားရန်ဤလုပ်ဆောင်မှုကိုအသုံးပြုခြင်းကို ဦး စားပေးရန် developer များကအကြံပြုသည်။