လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> mb_get_info function နှင့် mb_detect_encoding function အကြားခြားနားချက်

mb_get_info function နှင့် mb_detect_encoding function အကြားခြားနားချက်

gitbox 2025-05-11

Multibyte ကြိုးများနှင့်ဆက်ဆံရာတွင် PHP ၏ Mbstring extension သည်အလွန်လက်တွေ့လုပ်ဆောင်ချက်များကိုပေးသည်။ ၎င်းတို့အနက် MB_Get_info () နှင့် MB_Detect_encoding () နှင့် mb_detect_encoding () ကို အတွေ့အကြုံမရှိသေးသောကြောင့်ရှုပ်ထွေးသည်။ သူတို့အားလုံးသည် Multi-byte ဇာတ်ကောင် encoding နှင့်သက်ဆိုင်သော်လည်း၎င်းတို့သည်လုံးဝကွဲပြားခြားနားသောလုပ်ဆောင်ချက်များရှိသည်။ ယနေ့ကျွန်ုပ်တို့သည်သူတို့၏ကွဲပြားခြားနားမှုများနှင့်၎င်းတို့၏သက်ဆိုင်သည့်အခြေအနေများကိုဂရုတစိုက်ပြန်လည်သုံးသပ်ပါမည်။

1 ။ MB_GET_INFO () ဘာလုပ်သလဲ။

MB_Get_info () သည်လက်ရှိ Mbstring ပတ်ဝန်းကျင်၏ configuration information ကိုရရှိရန်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ ၎င်းသည် Encoding Settings များနှင့်ပတ်သက်သောအသေးစိတ်အချက်အလက်များနှင့်ပတ်သက်သောအသေးစိတ်အချက်အလက်များနှင့်ပတ်သက်သည့်အသေးစိတ်အချက်အလက်များနှင့်ပတ်သက်သည့်အသေးစိတ်အချက်အလက်များ, HTTP input ကို encoding, လက်ရှိဘာသာစကားချိန်ညှိချက်များ,

သဒ္ဒါ:

 mb_get_info(string $type = null): array|string|false

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

 <?php
// အားလုံး configuration သတင်းအချက်အလက်ရယူပါ
$info = mb_get_info();
print_r($info);

// လက်ရှိပြည်တွင်းရေးကုဒ်ကိုရယူပါ
$internalEncoding = mb_get_info("internal_encoding");
echo "ပြည်တွင်းရေးကုဒ်ဖြစ်ပါတယ်: " . $internalEncoding;
?>

ပြေး၏ရလဒ်ဤကဲ့သို့သော (တစ်စိတ်တစ်ပိုင်း):

 Array
(
    [internal_encoding] => UTF-8
    [http_output] => UTF-8
    [http_input] => pass
    [language] => neutral
    ...
)

အကယ်. သင်သည်အချို့သောပစ္စည်းများကို UTF-8 ဖြစ်သည်ကိုအတည်ပြုလိုသောပစ္စည်းအချို့ကိုသာစိတ်ဝင်စားပါကဤ function သည်အလွန်အဆင်ပြေသည်။

2 ။ mb_detect_encoding () ဘာလုပ်သလဲ။

mb_detect_encoding () သည်အခြားနည်းတစ်နည်းမှာ string တစ်ခု၏ encoding ကိုခန့်မှန်းရန် အသုံးပြုသည်။ အသုံးပြုသူ, ပုံစံဒေတာများသို့မဟုတ် 0 က်ဘွဲများဖမ်းမိသောဝက်ဘ်ဆိုက်များမှတင်ထားသောဖိုင်တစ်ခုသို့မဟုတ်ဝက်ဘ်ဆိုက်များမှတင်ထားသောဖိုင်တစ်ခုကဲ့သို့သောအမည်မသိအရင်းအမြစ်တစ်ခုမှသင်ရရှိသောအခါ၎င်းသည်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။

သဒ္ဒါ:

 mb_detect_encoding(string $string, array|string|null $encodings = null, bool $strict = false): string|false

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

 <?php
// ဝဘ်စာမျက်နှာတစ်ခုတွားကြည့်ပါ
$content = file_get_contents("https://gitbox.net/page.html");

// ၎င်း၏ encoding detect လုပ်ဖို့ကြိုးစားပါ
$encoding = mb_detect_encoding($content, ["UTF-8", "GBK", "ISO-8859-1"]);
echo "အဆိုပါရှာဖွေတွေ့ရှိ encoding ဖြစ်ပါတယ်: " . $encoding;
?>

သင်က encodings ကိုပိုမိုတင်းကြပ်စွာကိုက်ညီရန်တင်းကြပ်စွာ mode ကိုဖွင့်နိုင်သည်။

 $encoding = mb_detect_encoding($content, ["UTF-8", "GBK"], true);

3 ။ သူတို့ကိုအကြားခြားနားချက်၏အကျဉ်းချုပ်

အလုပ်လုပ်တဲ့အချက်များ mb_get_info () mb_detect_encoding ()
အကျိုး encoding ပတ်ဝန်းကျင် configuration ကိုရယူပါ string ကို၏အမှန်တကယ် encoding ကို detect
တေးရေး optional ကို parameters တွေကိုပြန်ပြန်အကြောင်းအရာဆုံးဖြတ်ရန် သင် string တစ်ခုတွင်သွားရန်လိုအပ်ပြီးသင် encoding list ကိုရွေးချယ်နိုင်သည်။
အမျိုးအစားပြန်လာ Array သို့မဟုတ် string ကို string ကိုသို့မဟုတ်မှားယွင်းသော
လျှောက်လွှာဇာတ်လမ်းတစ်ပုဒ် encoding settings, debugging check အမည်မသိ encoded strings ဆုံးဖြတ်ရန်
input အကြောင်းအရာနှင့်အတူဆက်ဆံရေး အကြောင်းအရာကိုထည့်ရန်မလိုအပ်ပါ string ကိုပါ 0 င်သည့်အကြောင်းအရာများကိုထောက်ပံ့ရမည်

တစ် ဦး ထက်ပိုရိုးရှင်းသောနှိုင်းယှဉ်လေ့လာမှု:

  • mb_get_info () - PHP ကိုမေးပါ။

  • mb_detect_encoding () - ဒီ string ကို encoding ဆိုတာဘာလဲ။

4 ။ ဘုံနားလည်မှုလွဲမှားခြင်း

  1. MB_Get_info က string encoding ကိုပြောပြနိုင်တယ်လို့ငါထင်ခဲ့တယ်။
    ၎င်းသည် PHP ၏လက်ရှိ encoding settings ကိုသာသင့်အားပြောပြလိမ့်မည်။

  2. encoding list ကိုမဖော်ပြဘဲ detect:
    ပုံမှန်အားဖြင့် MB_Detect_encoding () သည် အတွင်းပိုင်း encoding အမိန့်ကိုအသုံးပြုသည်။ ကိုယ်စားလှယ်လောင်း encoding အကွာအဝေးကိုရှင်းရှင်းလင်းလင်းသိပါကတိကျမှန်ကန်မှုနှင့်စွမ်းဆောင်ရည်ကိုတိုးတက်စေနိုင်သောလက်ဖြင့်ပြုလုပ်ရန်အကောင်းဆုံးဖြစ်သည်။

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

အကယ်. သင်သည် PHP သည်လက်ရှိ Encoding ကိုမည်သို့သတ်မှတ်သည်ကိုသင်သိလိုပါက UTF-8 ကိုပုံမှန်အသုံးပြုသည်ဖြစ်စေ, MB_Get_info () ကို သုံးပါ။
GitpBox.net မှ HTML အပိုင်းအစတစ်ခုကဲ့သို့သောအမည်မသိ encoded text တစ်ခုရှိပါက UTF-8, GBK သို့မဟုတ်တစ်စုံတစ်ရာကိုဆုံးဖြတ်ရန် MB_Detect_encoding () ကို အသုံးပြုသင့်သည်။

လုပ်ဆောင်ချက်နှစ်ခုသည်တစ် ဦး ကိုတစ် ဦး ဖြည့်စွက်ပြီးမိမိတို့ကိုယ်ပိုင်တာဝန်များကိုထမ်းဆောင်ကြသည်။ သူတို့ကိုရှင်းရှင်းလင်းလင်းနားလည်ပြီးနောက်တွင်သူတို့သည်အလွန်လွယ်ကူလိမ့်မည်။