PHP Development တွင် MB_Get_info () function သည် Multibyte encoding နှင့်ဆက်စပ်သော configuration information ရရှိရန်အသုံးပြုသည်။ သို့သော်တစ်ခါတစ်ရံတွင်ကျွန်ုပ်တို့သည် Multi-byte encoding information သည်အမှန်တကယ်အခြေအနေနှင့်မကိုက်ညီသောပြ the နာကိုကျွန်ုပ်တို့ကြုံတွေ့ရနိုင်သည်။ ဤဆောင်းပါးသည်ဤပြ problem နာ၏အကြောင်းရင်းများကိုနက်ရှိုင်းစွာခွဲခြမ်းစိတ်ဖြာပါလိမ့်မည်။
MB_GET_INFO () သည် PHP ရှိ function တစ်ခုဖြစ်ပြီး Multibyte String Extension (Mbstring) configuration information ကိုရယူရန်။ ၎င်းသည်လက်ရှိ Multibyte Encoding နှင့်ပတ်သက်သော configuration information များပါ 0 င်သောအပေါင်းအသင်းခင်းကျင်းမှုကိုပြန်လည်ရရှိစေသည်။
mb_get_info();
ဤလုပ်ဆောင်ချက်သည်မည်သည့် parameters များကိုမလိုအပ်ပါ။ ပုံမှန်အားဖြင့် configuration encoding encoding နှင့်ဆက်စပ်သော configuration information များကိုပြန်လည်ရရှိခဲ့သည်။
MB_GEGET_InFO () ကိုအသုံးပြုသောအခါ (UTF-8 or Shift-Jis ကဲ့သို့သော encoding information သည် encoding encoding encoding encoding encoding encoding encoding informings ကိုတိတိကျကျမထင်မှတ်ပါ။ များသောအားဖြင့်ထိုကဲ့သို့သောပြ problems နာများသည်အောက်ပါအခြေအနေများတွင်ပေါ်ပေါက်လာသည်။
PHP configuration ပြ issues နာများ - PHP တွင် Mbstring extension ကိုပုံမှန်အားဖြင့်ဖွင့်လှစ်ခြင်းမရှိပါ။ အကယ် . extension ကိုမှန်ကန်စွာဖွင့်လှစ်ခြင်းမရှိသေးပါက,
ပတ်ဝန်းကျင် variable ကိုပြ problem နာ - Mbstring_translation_translation setting error ကဲ့သို့သော PHP ပတ်ဝန်းကျင်၏ configuration information သည် Mbstroding_translation Setting Error ကိုပြန်လည်ရောက်ရှိလာနိုင်သည်။
အက်ခရာ encoding conflicting ပ conflicts ိပက်ခ - PHP script ကို run သောအခါ encoding settings သည် encoding settings သို့မဟုတ်ဖိုင်တွဲအတွင်းရှိ encoding နှင့်ကိုက်ညီမှုမရှိပါက MB_GEget_info () မှ ရရှိသော encoding အချက်အလက်များသည်အမှန်တကယ်အခြေအနေနှင့်မကိုက်ညီပါ။
Mbstring extension ကိုဖွင့်ထားသလားစစ်ဆေးပါ
PHP သည် Phpinfo () သို့မဟုတ် extension_loaded () မှတဆင့် mbstring extension ကိုတင်နေသည်ကိုစစ်ဆေးပါ။ အကယ်. extension ကို enable လုပ်မထားပါက၎င်းကိုအောက်ပါနည်းလမ်းများဖြင့်ဖွင့်နိုင်သည်။
PHPP.INI ဖိုင်တွင်အောက်ပါ configuration ကိုမှတ်ချက်မပေးကြောင်းသေချာပါစေ။
extension=mbstring.so
Windows စနစ်များအတွက် PHP_MBSTRING.DLL ဖိုင်တည်ရှိပြီး 0 င်းဒိုးကိုသေချာအောင်လုပ်ပါ။
encoding settings မှန်ကန်သောရှိမရှိစစ်ဆေးပါ
အကယ်. PHP ပတ်ဝန်းကျင်ရှိ encoding settings သည်ကိုက်ညီမှုမရှိပါက MB_Get_info () သည် မမှန်ကန်သောတန်ဖိုးကိုပြန်ပေးနိုင်သည်။ အက္ခရာစဉ်ရှိ encoding အချက်အလက်များကိုကိုယ်တိုင်ကိုယ်ကျ script encoding မှန်ကန်သော encoding ကိုပြန်လည်ရရှိစေရန်ကူညီနိုင်သည်။ မူလ encoding ကိုအောက်ပါကုဒ်ကို အသုံးပြု. စစ်ဆေးပြီးသတ်မှတ်နိုင်သည်။
mb_internal_encoding('UTF-8'); // ပြည်တွင်းရေး encoding ထားပါ
mb_http_input('UTF-8'); // တည်ဆောက်သည် HTTP encoding ကိုရိုက်ထည့်ပါ
mb_http_output('UTF-8'); // တည်ဆောက်သည် HTTP output encoding
၎င်းသည် UTF-8 ကို အသုံးပြု. Multibyte ဇာတ်ကောင်များအားလုံးကို encoded ကြောင်းသေချာစေသည်။
configuration ကိုကိုယ်တိုင်မှန်ကန်မှုရှိမရှိစစ်ဆေးပါ
MB_GEget_info () မှသတင်းအချက်အလက်များကို debugging လုပ်စဉ်အတွင်းမမှန်ကန်ကြောင်းသင်တွေ့ရှိပါက configuration error တစ်ခုရှိမရှိကြည့်ရှုရန် Mbstring extension ၏ configuration status ကိုတိုက်ရိုက်စစ်ဆေးနိုင်သည်။ Multibyte ဇာတ်ကောင်အစုံ၏ configuration အချက်အလက်များကို Phpinfo () မှတဆင့်ကြည့်ရှုနိုင်သည်။
Mbstring extension ကိုမှန်ကန်စွာဖွင့်ထားကြောင်းသေချာပါစေ
Mbstring extension ကိုမှန်ကန်စွာဖွင့်ထားပြီးကုဒ်တွင်အသုံးပြုနိုင်သည်။ သင်အတည်ပြုနိုင်သည်:
if (extension_loaded('mbstring')) {
echo "mbstring extension ကို loaded";
} else {
echo "mbstring extension ကိုမတင်ပါ";
}
အကယ်. ၎င်းကိုမတင်ပါကအောက်ပါအတိုင်း၎င်းကိုဖွင့်နိုင်သည်။
ကိုယ်တိုင်ဇာတ်ကောင် encoding ကို set
Code တွင် PHP ပတ် 0 န်းကျင်တစ်ခုလုံး၏ဇာတ်ကောင် encoding ကိုတသမတ်တည်းရှိသည့် MB_HttP_INPPATE () နှင့် MB_HTTP_INPPATE () နှင့် mb_http_input () ကို အတိအလင်းသတ်မှတ်ထားသည်။
PHP Configuration ဖိုင်ကို Update လုပ်ပါ
Php.ini ရှိသက်ဆိုင်ရာချိန်ညှိချက်များသည်မမှားကြောင်းသေချာပါစေ။ PHP.INI ဖိုင်ကိုတည်းဖြတ်ခြင်းနှင့်ဝက်ဘ်ဆာဗာကိုပြန်လည်စတင်ခြင်းဖြင့်ပြောင်းလဲခြင်းကိုသင်အသုံးပြုနိုင်သည်။ ဥပမာအားဖြင့်အောက်ပါချိန်ညှိချက်များကိုသေချာအောင်လုပ်ပါ။
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
PHP ဗားရှင်းကိုအဆင့်မြှင့်တင်ပါ
အထက်ပါအဆင့်များသည်ပြ issue နာကိုမဖြေရှင်းနိုင်ပါက PHP ဗားရှင်းနှင့် Mbstring extension အကြားလိုက်ဖက်သည့်အရေးကိစ္စဖြစ်နိုင်သည်။ ဖြစ်နိုင်ချေရှိသောလိုက်ဖက်တဲ့ပြ issues နာများကိုဖြေရှင်းရန် PHP နှင့် Mbstring extensions ၏နောက်ဆုံးပေါ်ဗားရှင်းသို့အဆင့်မြှင့်တင်ရန်အကြံပြုသည်။
MB_GEGET_INFO () function ကို PHP တွင် Multibyte encoding နှင့်ဆက်စပ်သော configuration information ရရှိရန်အသုံးပြုသည်။ သို့သော်တစ်ခါတစ်ရံတွင် function မှပြန်လာသော encoding အချက်အလက်များသည်အမှန်တကယ်အခြေအနေနှင့်မကိုက်ညီသောအခြေအနေများကြုံတွေ့ရသည်။ PHP ပတ်ဝန်းကျင် configuration ကိုဂရုတစိုက်စစ်ဆေးပါက Mbstring extension ကိုမှန်ကန်စွာဖွင့်ထားပြီး,
အသုံးပြုနေစဉ်အတွင်းအခြားပြ problems နာများကိုသင်ကြုံတွေ့ရပါကတရားဝင် PHP မှတ်တမ်းများသို့မဟုတ်သက်ဆိုင်ရာအသိုင်းအဝိုင်းဖိုရမ်ကိုပိုမိုအကူအညီတောင်းခံနိုင်သည်။