စာသားဖိုင်များနှင့်အလုပ်လုပ်သောအခါဖိုင်၏အက်ခရာ encoding format ကိုနားလည်ရန်အလွန်အရေးကြီးသည်။ MB_Get_info function ကို PHP သည် MB_Get_info function ကိုထောက်ပံ့ပေးသည်။ MB_GET_INFO function ကိုအဓိကအားဖြင့်လက်ရှိ Multibyte encoding encoding environments နှင့်ပတ်သက်သော settings များကိုရယူရန်အဓိကအားဖြင့်အသုံးပြုသော်လည်းစာသားဖိုင်များနှင့်ပတ်သက်သောအချက်အလက်များ encoding နှင့်ပတ်သက်သောအချက်အလက်များနှင့်သတင်းအချက်အလက်များကိုရရှိရန်၎င်းကိုကျွန်ုပ်တို့ပိုမိုအသုံးချနိုင်သည်။
ပထမ ဦး စွာသင်၏ PHP ပတ်ဝန်းကျင်တွင် Mbstring extension များကိုသေချာအောင်လုပ်ပါ။ ဤတိုးချဲ့မှုသည် Multi-byte character encoding အတွက် Multi-byte ဇာတ်ကောင် encoding ကိုအထောက်အပံ့များပေးသည် (UTF-8, SJIS, SJIS, EUC-JP စသည်)
Mbstring extension ကိုအောက်ပါနည်းလမ်းများဖြင့်ဖွင့်ထားခြင်းရှိမရှိစစ်ဆေးနိုင်သည်။
<?php
if (extension_loaded('mbstring')) {
echo 'mbstring extension ကို enabled';
} else {
echo 'mbstring extension ကိုဖွင့်မရပါ';
}
?>
မဖွင့်ပါက extension = mbstring line ကိုသတိပေးရန် Php.INI ဖိုင်ကိုပြုပြင်နိုင်သည်။
MB_GEGET_INFO function သည်လက်ရှိ Mbstring Setting နှင့်ပတ်သက်သောသတင်းအချက်အလက်များကိုပြန်ပို့သည်။ ဖိုင်၏စာလုံးသင်္ကေတကိုသင်တိုက်ရိုက်မပြောပြနိုင်သော်လည်းဖိုင်၏ encoding ကိုအများအားဖြင့်ထည့်သွင်းရန်အခြားလုပ်ဆောင်မှုများကိုသင်ပေါင်းစပ်နိုင်သည်။
<?php
// ရယူ mbstring ပြင်ဆင်မှုသတင်းအချက်အလက်
$info = mb_get_info();
print_r($info);
?>
ဤကုဒ်သည်လက်ရှိ Mbstring Settings (UTF-8 iso-8859-1) အပါအ 0 င်လက်ရှိ Mbstring Settings ၏အသေးစိတ်အချက်အလက်များကိုဖော်ပြလိမ့်မည်။
MB_GEGET_INFO သည် Multibyte strings များအတွက် configuration information ကိုထောက်ပံ့ပေးသော်လည်းဖိုင်၏ဇာတ်ကောင် encoding alcoding ကိုတိကျစွာရယူရန်သင် MB_Detect_encoding function ကိုသုံးရန်လိုအပ်သည်။ MB_DETEEct_encoding ဖိုင်ကို ဖိုင်တွဲများကိုခွဲခြမ်းစိတ်ဖြာခြင်းဖြင့်ဖိုင်၏ character encoding ကိုခန့်မှန်းရန်ကြိုးစားသည်။
<?php
// ဖိုင်အကြောင်းအရာကိုဖတ်ပါ
$file_content = file_get_contents('example.txt');
// အသုံးပြု mb_detect_encoding ဖိုင် encoding ဖိုင်ကို detect
$encoding = mb_detect_encoding($file_content, mb_list_encodings(), true);
// ရလဒ်ရလဒ်
echo 'ဖိုင်၏ character encoding သည်:' . $encoding;
?>
ဤကုဒ်သည် Pegent.txt ဖိုင်၏ contents များကိုဖတ်ပြီးဖိုင်၏ဇာတ်ကောင် encoding ကိုရှာဖွေရန် MB_Detect_encoding function ကိုသုံးပါလိမ့်မည်။ ရှာဖွေတွေ့ရှိသည်အောင်မြင်ပါကရှာဖွေတွေ့ရှိသော encoding format ကိုပြန်ပို့သည်။
MB_Detect_encoding သည် encodings အားလုံးကိုအပြည့်အ 0 ရှာဖွေတွေ့ရှိခြင်းမရှိပါ။
Supported encodings အားလုံးကို MB_List_encodings မှတစ်ဆင့်စာရင်းပြုစုနိုင်ပြီးရှာဖွေတွေ့ရှိမှုကိုတိုးတက်စေရန် MB_Detect_encoding သို့ parameters များကိုသတ်မှတ်ထားသည်။
MB_GEget_info ကိုယ်တိုင်ကသင့်အား encoding information ကိုတိုက်ရိုက်မပေးနိုင်သော်လည်းလက်ရှိ PHP ပတ် 0 န်းကျင်၏အက်ခရာ encoding settings ကိုနားလည်ရန်ကူညီနိုင်သည်။ ဥပမာအားဖြင့်ဖိုင်ကိုမဖတ်မီလက်ရှိပတ်ဝန်းကျင်၏ပုံမှန်ဇာတ်လမ်း encoding ကိုသင်အတည်ပြုနိုင်ပြီးဖိုင်၏အမှန်တကယ် encoding format များကိုရှာဖွေရန် MB_Detect_encoding နှင့်ပေါင်းစပ်ပါ။
<?php
// ရယူ当前 mbstring ပြင်ဆင်မှုသတင်းအချက်အလက်
$mb_info = mb_get_info();
echo 'လက်ရှိ default ဇာတ်ကောင် encoding ဖြစ်ပါတယ်:' . $mb_info['encoding'] . "\n";
// ဖိုင်အကြောင်းအရာကိုဖတ်ပါ
$file_content = file_get_contents('example.txt');
// ဖိုင် encoding ဖိုင်ကို detect
$file_encoding = mb_detect_encoding($file_content, mb_list_encodings(), true);
echo 'ဖိုင် encoding ဖိုင်ဖြစ်ပါတယ်:' . $file_encoding . "\n";
// ဖိုင် encoding နှင့် default encoding လျှင်ကိုက်ညီမှုမရှိပါ,ပေြာင်း
if ($file_encoding !== $mb_info['encoding']) {
$file_content = mb_convert_encoding($file_content, $mb_info['encoding'], $file_encoding);
echo 'ဖိုင်အကြောင်းအရာကိုလက်ရှိ default encoding သို့ကူးပြောင်းထားသည်。';
}
?>
ဤကုဒ်တွင်ကျွန်ုပ်တို့သည်လက်ရှိ Mbstring configuration information ကိုပထမဆုံးရယူပြီးဖိုင်၏ encoding ကို MB_Detect_encoding မှတဆင့်ရှာဖွေတွေ့ရှိပါ။ အကယ်. ဖိုင် encoding ဖိုင်သည်လက်ရှိ PHP ပတ်ဝန်းကျင်၏ encoding settings နှင့်ကိုက်ညီမှုမရှိပါက MB_ConVert_encoding ကို ပြောင်းလဲရန်ကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။