Multibyte ကြိုးများနှင့်ဆက်ဆံရာတွင် PHP ၏ Mbstring extension သည်အလွန်လက်တွေ့လုပ်ဆောင်ချက်များကိုပေးသည်။ ၎င်းတို့အနက် MB_Get_info () နှင့် MB_Detect_encoding () နှင့် mb_detect_encoding () ကို အတွေ့အကြုံမရှိသေးသောကြောင့်ရှုပ်ထွေးသည်။ သူတို့အားလုံးသည် Multi-byte ဇာတ်ကောင် encoding နှင့်သက်ဆိုင်သော်လည်း၎င်းတို့သည်လုံးဝကွဲပြားခြားနားသောလုပ်ဆောင်ချက်များရှိသည်။ ယနေ့ကျွန်ုပ်တို့သည်သူတို့၏ကွဲပြားခြားနားမှုများနှင့်၎င်းတို့၏သက်ဆိုင်သည့်အခြေအနေများကိုဂရုတစိုက်ပြန်လည်သုံးသပ်ပါမည်။
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 သည်အလွန်အဆင်ပြေသည်။
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);
အလုပ်လုပ်တဲ့အချက်များ | 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 ဆိုတာဘာလဲ။
MB_Get_info က string encoding ကိုပြောပြနိုင်တယ်လို့ငါထင်ခဲ့တယ်။
၎င်းသည် PHP ၏လက်ရှိ encoding settings ကိုသာသင့်အားပြောပြလိမ့်မည်။
encoding list ကိုမဖော်ပြဘဲ detect:
ပုံမှန်အားဖြင့် MB_Detect_encoding () သည် အတွင်းပိုင်း encoding အမိန့်ကိုအသုံးပြုသည်။ ကိုယ်စားလှယ်လောင်း encoding အကွာအဝေးကိုရှင်းရှင်းလင်းလင်းသိပါကတိကျမှန်ကန်မှုနှင့်စွမ်းဆောင်ရည်ကိုတိုးတက်စေနိုင်သောလက်ဖြင့်ပြုလုပ်ရန်အကောင်းဆုံးဖြစ်သည်။
အကယ်. သင်သည် PHP သည်လက်ရှိ Encoding ကိုမည်သို့သတ်မှတ်သည်ကိုသင်သိလိုပါက UTF-8 ကိုပုံမှန်အသုံးပြုသည်ဖြစ်စေ, MB_Get_info () ကို သုံးပါ။
GitpBox.net မှ HTML အပိုင်းအစတစ်ခုကဲ့သို့သောအမည်မသိ encoded text တစ်ခုရှိပါက UTF-8, GBK သို့မဟုတ်တစ်စုံတစ်ရာကိုဆုံးဖြတ်ရန် MB_Detect_encoding () ကို အသုံးပြုသင့်သည်။
လုပ်ဆောင်ချက်နှစ်ခုသည်တစ် ဦး ကိုတစ် ဦး ဖြည့်စွက်ပြီးမိမိတို့ကိုယ်ပိုင်တာဝန်များကိုထမ်းဆောင်ကြသည်။ သူတို့ကိုရှင်းရှင်းလင်းလင်းနားလည်ပြီးနောက်တွင်သူတို့သည်အလွန်လွယ်ကူလိမ့်မည်။