PHP တွင် Highlight_Shring function ကို debug လုပ်ရန်လွယ်ကူသည့် PHP ကုဒ်ကိုမီးမောင်းထိုးပြရန်အသုံးပြုသည်။ သို့သော်ပုံမှန်အားဖြင့်၎င်းသည်အပြောင်းအလဲကိုတန်ဖိုးမပေးဘဲရလဒ်ကိုတိုက်ရိုက်ထုတ်ပေးသည်။ Highlight_String သည် များသောအားဖြင့်အခြေခံလိုအပ်ချက်များကိုဖြည့်ဆည်းပေးနိုင်သော်လည်းဤလုပ်ဆောင်မှုကိုအသုံးပြုခြင်းသည်ကျွန်ုပ်တို့ ပြန်လာသည့် parameter သည်မသတ်မှတ်သည့်အခါအလားအလာရှိသောအန္တရာယ်များနှင့်အဆင်မပြေမှုများဖြစ်ပေါ်စေနိုင်သည်။
Lighlight_string function ကိုခေါ်သည့်အခါ, ပြန်လာသော parameter သည်မသတ်မှတ်ပါက function သည်မီးမောင်းထိုးပြထားသောကုဒ်ကို browser ကိုတိုက်ရိုက်ထုတ်ယူလိမ့်မည်။ ဆိုလိုသည်မှာသင်သည် output ၏အချိန်ဇယားသို့မဟုတ် format ကိုမထိန်းချုပ်နိုင်ပါ။ ဤအမူအကျင့်သည်အချို့သောကိစ္စရပ်များတွင် code ကိုမီးမောင်းထိုးပြသည့်ကုဒ်ကိုကိုင်တွယ်လိုပါကသို့မဟုတ်နောက်ထပ်စစ်ဆင်ရေးအတွက် variable ကိုသိုလှောင်ထားလိုပါကဤအပြုအမူသည်သင်၏ပြောင်းလွယ်ပြင်လွယ်ကိုကန့်သတ်ထားသည်။
ဥပမာအားဖြင့်:
$code = '<?php echo "Hello, world!"; ?>';
highlight_string($code); // တိုက်ရိုက်မီးမောင်းထိုးပြကုဒ် output ကို output
အထက်ပါကုဒ်သည်မီးမောင်းထိုးပြထားသော PHP code ကို browser သို့တိုက်ရိုက်ထုတ်လွှင့်လိမ့်မည်။
Highlight_Shring သည် ပုံမှန် outputs သည်ကုဒ်များကိုမီးမောင်းထိုးပြထားသောကြောင့်စာမျက်နှာ၏အပြင်အဆင်နှင့်စတိုင်ကိုထိခိုက်စေနိုင်သည်။ အထူးသဖြင့် Dynamic Web Pages များ၌, စာမျက်နှာပြန်ဆိုစဉ်အတွင်းအချို့သော code segments များကိုမီးမောင်းထိုးပြပါကစာမျက်နှာအကြောင်းအရာကိုမသင့်လျော်သောအနေအထားသို့ထည့်သွင်းနိုင်သည်။
ဥပမာအားဖြင့် PHP code သည်ပုံစံတင်သွင်းစဉ်အတွင်းတိုက်ရိုက်မှားယွင်းစွာထုတ်ဖော်ပြောဆိုပါကအသုံးပြုသူအားအလွှာရှုပ်ထွေးမှုများသို့မဟုတ်အမှားအယွင်းများကိုပြသနိုင်သည်။
အကယ်. သင်သည်ကုဒ်များစွာနှင့်၎င်းကိုမီးမောင်းထိုးပြရန်လိုအပ်ပါကတိုက်ရိုက် output သည်စာမျက်နှာကိုထုတ်ယူရန်နှင့်စီမံရန်ခက်ခဲနိုင်သည်။ ပြန်လာသော parameter သည်မလွယ်ကူပါကမီးမောင်းထိုးထားသောကုဒ်ကိုနောက်ဆက်တွဲအပြောင်းအလဲအတွက် variable တစ်ခုတွင်မသိမ်းဆည်းနိုင်ပါ။ အထူးသဖြင့်ကုဒ်များသို့မဟုတ်ပတ်ဝန်းကျင်တွင်ကုဒ်များကိုပုံမှန်ပြသရန်လိုအပ်သည့်နေရာများတွင်ပြောင်းလွယ်ပြင်လွယ်နှင့်ထိန်းချုပ်မှုမရှိခြင်းသည်ပြ a နာတစ်ခုဖြစ်နိုင်သည်။
ဥပမာအားဖြင့် Code ကို Code အချက်အလက်များသို့မဟုတ် dynamic တင်ဆက်မှုကိုနှိုင်းယှဉ်သောအခါကျွန်ုပ်တို့သည်များသောအားဖြင့်နောက်ခံတွင်ကုဒ်ကိုလုပ်ဆောင်လို။ ရလဒ်များကိုရှေ့ဆုံးသို့ပြန်ပို့လိုကြသည်။ အကယ်. မီးမောင်းထိုးပြထားသော output ကို variable များကိုမှတဆင့်မထိန်းချုပ်နိုင်ပါက output content ကိုလုပ်ဆောင်ရန်နောက်ထပ်ယုတ္တိဗေဒလိုအပ်သည်။
Highlight_String ကိုယ်တိုင်ကလေးနက်သောလုံခြုံရေးအန္တရာယ်များကိုတိုက်ရိုက်မိတ်ဆက်ပေးခြင်းမရှိပါက, ပရိုဂရမ်ရှိအချို့သောအထိခိုက်မခံသောကုဒ်များသို့မဟုတ်အမှားများကိုတိုက်ရိုက်ထုတ်လွှင့်နိုင်ပါက၎င်းတို့ကိုအဆုံးအသုံးပြုသူနှင့်ထိတွေ့နိုင်သည်။ ဥပမာအားဖြင့်, အချို့သောလျှပ်စစ်ဓာတ်အားပေးထားတဲ့သုံးစွဲသူထည့်သွင်းမှုမှာမူတည်ပြီးစာမျက်နှာပေါ်တွင်ပြသပါက၎င်းသည်သတင်းအချက်အလက်ယိုစိမ့်မှုသို့မဟုတ် XSS (Cross-site scripting) တိုက်ခိုက်မှုများကဲ့သို့သောသတင်းအချက်အလက်ယိုစိမ့်မှုသို့မဟုတ်လုံခြုံရေးဆိုင်ရာပြ issues နာများကိုဖြစ်ပေါ်စေနိုင်သည်။
အကယ်. developer သည် code သို့မဟုတ် input ကိုစနစ်တကျစစ်ထုတ်ခြင်းသို့မဟုတ်မလုပ်ဆောင်ပါကမီးမောင်းထိုးပြထားသောကုဒ်သည်အန္တရာယ်ရှိသောအသုံးပြုသူများမှတိုက်ရိုက်ထုတ်လွှင့်များကိုခေါင်းပုံဖြတ်နိုင်သည်။
ရှုပ်ထွေးသော PHP applications များတွင်မတူညီသော output များစီးဆင်းမှုများကိုပေါင်းစပ်ရန်လိုအပ်သည်သို့မဟုတ်ဖိုင်များ, ဒေတာဘေ့စ်များကိုရှာဖွေရန်လိုအပ်ပါကဤ output ကိုစီးဆင်းမှုကိုတိုက်ရိုက်ထုတ်ယူပါကဤ output ကိုစီးဆင်းမှုသည်ကောင်းမွန်စွာအလုပ်လုပ်လိမ့်မည်မဟုတ်ပါ။ ဥပမာအားဖြင့်, သင်သည်နောက်ခံရှိ JSON format တွင်တုန့်ပြန်မှုတစ်ခုပြုလုပ်ရန်နှင့်ပြန်လည်ဖြေကြားရန်လိုအပ်သည့် web application တစ်ခုကိုသင်တီထွင်နေပါကမီးမောင်းထိုးပြသည့်ကုဒ်များကိုတိုက်ရိုက်အနေဖြင့်တိုက်ရိုက်တုန့်ပြန်မှုရှိစေရန်အနှောင့်အယှက်ပေးလိမ့်မည်။
သင် ပြန်လာသော parameter သည်သင်ကိုအသုံးပြုပါကထိုကဲ့သို့သောပြ problems နာများကိုသင်ရှောင်ရှားနိုင်ပြီး၎င်းကိုတိုက်ရိုက်ထုတ်ပယ်ခြင်းမရှိဘဲမီးမောင်းထိုးပြ code ကို string တစ်ခုအဖြစ်ပြန်ပို့ပါ။
အထက်ပါအန္တရာယ်များကိုရှောင်ရှားရန် Highlight_string function ကိုအသုံးပြုသောအခါ ပြန်လာရန် parameter သည် စစ်မှန်သောရန်ပုံငွေ ကိုသတ်မှတ်ရန်အကြံပြုသည်။ ဤနည်းအားဖြင့် function သည် directory output အစားအစားမီးမောင်းထိုးပြထားသောကုဒ်ကိုပြန်ပို့ပေးပြီး developer သည်လိုအပ်သည့်အတိုင်း string ကိုမည်သို့ကိုင်တွယ်ရမည်ကိုရွေးချယ်နိုင်သည်။
ဥပမာအားဖြင့်:
$code = '<?php echo "Hello, world!"; ?>';
$highlightedCode = highlight_string($code, true); // outputting မပါဘဲမီးမောင်းထိုးပြ code ကိုရယူပါ
// သင်ထို့နောက်လုပ်နိုင်သည် $highlightedCode နောက်ထပ်အပြောင်းအလဲနဲ့ထွက်သယ်ဆောင်
Repen သို့ ပြန်သွားခြင်း အားဖြင့်သင်ဟာ variable တွေကို variable တွေကိုသိုလှောင်ထားနိုင်တယ်, output content ကိုထပ်မံစိတ်ကြိုက်ပြုပြင်ခြင်းသို့မဟုတ် template ကို embed လုပ်ခြင်း,
Lightlight_String function ကို အသုံးပြု. ပြန်လာသည့် parameter ကိုမသတ်မှတ်ဘဲရိုးရှင်းသော်လည်း၎င်းသည်အချို့သောအန္တရာယ်များနှင့်အဆင်မပြေမှုများဖြစ်ပေါ်စေလိမ့်မည်။ ၎င်းသည်မထိန်းချုပ်နိုင်သည့်ထုတ်လုပ်မှု, ရှုပ်ထွေးမှုမရှိခြင်း, ရှုပ်ထွေးသောစီးပွားရေးယုတ္တိဗေဒတွင်ပါ 0 င်သည့်အခါမီးမောင်းထိုးပြထားသောကုဒ်ကိုပြန်လည်ထူထောင်ရန်နှင့်နောက်ဆက်တွဲအပြောင်းအလဲများကိုပြုလုပ်ရန်အတွက် ပြန်လာသည့် parameter ကို အတိအလင်း သတ်မှတ်ရန်အတွက် highlight_string function ကိုအသုံးပြုရန်အကြံပြုသည်။ ၎င်းသည်ကုဒ်ပြောင်းလွယ်ပြင်လွယ်တိုးတက်လာရုံသာမကလုံခြုံရေးအန္တရာယ်များကိုလည်းရှောင်ရှားနိုင်သည်။