MySQL database connections များအတွက် PHP ကိုအသုံးပြုသောအခါဇာတ်ကောင် settings set settings ကိုအရေးကြီးပါသည်။ အက်ခရာအစသည်စာသားဒေတာများကိုမည်သို့ပြုလုပ်သည်ကိုဆုံးဖြတ်သည်။ မှန်ကန်သောဇာတ်ကောင် set ကိုသေချာစေရန်ဒေတာဘေ့စ်ဆက်သွယ်မှု၏ဇာတ်ကောင် set ကိုသတ်မှတ်ရန်နှင့် Set_charset ( MySQLI :: Get_charset () Get_charset () Get_charset () ကို စစ်ဆေးရန်ဤဆောင်းပါးသည်ဤဆောင်းပါးသည်စူးစမ်းလေ့လာရန်စူးစမ်းလေ့လာပါမည်။
PHP တွင် MySQLI extension သည် MySQL ဒေတာဘေ့စ်နှင့်အပြန်အလှန်ဆက်သွယ်ခြင်းအတွက်ဘုံနည်းလမ်းဖြစ်သည်။ ၎င်းသည် Object-oriented နည်းလမ်းများကိုထောက်ပံ့သည်။ MySQLI ဖြင့် MySQL ဒေတာဘေ့စ်နှင့်ဆက်သွယ်မှုများနှင့်စုံစမ်းမှုများကိုအလွယ်တကူတည်ဆောက်ရန်နှင့်စုံစမ်းမှုများပြုလုပ်နိုင်သည်။
ဒေတာဘေ့စ်နှင့်အပြန်အလှန်ဆက်သွယ်သည့်အခါဇာတ်ကောင် settings သည်အက်ခရာဒေတာ encoded ကြောင်းဆုံးဖြတ်သည်။ တရုတ်, ဂျပန်သို့မဟုတ်အခြားအထူးအက္ခရာများပါ 0 င်သောအချက်အလက်များကိုသိမ်းဆည်းရန်လိုအပ်သည်ဆိုပါစို့။ ဇာတ်ကောင်အစုံစနစ်ကိုစနစ်တကျမသတ်မှတ်ပါက၎င်းသည်ရိုးရှင်းသော code ကိုဖြစ်ပေါ်စေလိမ့်မည်။
ယင်းကိုရှောင်ရှားရန်အဆင်သင့်ဖြစ်သည့်ဇာတ်ကောင်သတ်မှတ်ချက်ကိုမှန်ကန်စွာသတ်မှတ်ရန်နှင့်အတည်ပြုရန်အလွန်လိုအပ်သည်။ MySQL ၏ပုံမှန်ဇာတ်ကောင်အစုသည် လက်တင်ဘာသာ ဖြစ်သည်။ ဘာသာစကားမျိုးစုံပါဝင်မှုကိုသင်သိမ်းဆည်းရန်လိုအပ်ပါက UTF8 သို့မဟုတ် UTF8MB4 ဇာတ်ကောင်များကိုအသုံးပြုရန်အကြံပြုသည်။ အထူးသဖြင့် UTF8MB4 သည် Emoji Emoji ကဲ့သို့သောအထူးသင်္ကေတများအပါအ 0 င်အထူးသင်္ကေတများအပါအ 0 င်ပိုမိုကျယ်ပြန့်သောစာလုံးများကိုထောက်ပံ့သည်။
MySQLI :: set_charet () သည် ဒေတာဘေ့စ်ဆက်သွယ်မှုဇာတ်ကောင်သတ်မှတ်ရန်အသုံးပြုသောနည်းလမ်းဖြစ်သည်။ ဤနည်းလမ်းကိုခေါ်ဆိုခြင်းအားဖြင့်လက်ရှိဒေတာဘေ့စ်ဆက်သွယ်မှုတွင်အသုံးပြုသောစာလုံးကိုအတိအလင်းဖော်ပြနိုင်သည်။
<?php
// ဒေတာဘေ့စ် connection တစ်ခုတည်ဆောက်ပါ
$mysqli = new mysqli("localhost", "username", "password", "database_name");
// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($mysqli->connect_error) {
die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
// ဇာတ်ကောင်ကိုသတ်မှတ်ပါ utf8mb4
if (!$mysqli->set_charset("utf8mb4")) {
echo "Error loading character set utf8mb4: " . $mysqli->error;
} else {
echo "လက်ရှိဇာတ်ကောင်အစုံ: " . $mysqli->get_charset()->charset;
}
// အခြားလုပ်ရပ်များလုပ်ဆောင်ပါ
?>
အထက်ဖော်ပြပါကုဒ်များတွင် $ MySQLI-> Set_charet ("Utf8MB4") ကို UTF8MB4 နှင့်ချိတ်ဆက်ထားသောဇာတ်ကောင်အစုကိုသတ်မှတ်ရန်အသုံးပြုသည်။ အကယ်. setting ကိုအောင်မြင်ပါကပရိုဂရမ်သည်ဆက်လက်လုပ်ဆောင်သွားမည်ဖြစ်ပြီးပျက်ကွက်ပါကအမှားအယွင်းတစ်ခုသည်ရလဒ်ဖြစ်လိမ့်မည်။
MySQLI :: Get_charset () နည်းလမ်းကိုလက်ရှိဒေတာဘေ့စ်ဆက်သွယ်မှုကိုရရန်အသုံးပြုသည်။ ဤနည်းလမ်းသည်ဇာတ်ကောင်သတ်မှတ်သည့်သတင်းအချက်အလက်များပါ 0 င်သည့်အရာဝတ်ထုတစ်ခုဖြစ်ပြီးများသောအားဖြင့် charset နှင့် collation property များပါ 0 င်သောအရာဝတ်ထုတစ်ခု။
<?php
// လက်ရှိဆက်သွယ်မှု၏ character set သတင်းအချက်အလက်ကိုရယူပါ
$charset_info = $mysqli->get_charset();
// output character ကိုသတ်မှတ်သတင်းအချက်အလက်
echo "လက်ရှိဇာတ်ကောင်အစုံ: " . $charset_info->charset . "<br>";
echo "လက်ရှိ sorting စည်းမျဉ်းစည်းကမ်းတွေ: " . $charset_info->collation;
?>
အထက်ပါကုဒ်များမှတစ်ဆင့်လက်ရှိချိတ်ဆက်မှု၏ set settings သည်မှန်ကန်ကြောင်းအတည်ပြုနိုင်သည်။ ဒေတာဘေ့စ်နှင့်ချိတ်ဆက်သောအခါဇာတ်ကောင် set ကိုအတိအလင်း set မသတ်မှတ်ပါက MySQLI သည် MySQL default character set ကိုအသုံးပြုသည်။
ဒေတာဘေ့စ်ဆက်သွယ်မှုသည်မှန်ကန်သောဇာတ်ကောင်ကိုအသုံးပြုသည်ကိုသေချာစေရန် MySQLI :: set_charet () နှင့် MySqli :: MySQLI :: MySQLI :: get_charet () ကိုပေါင်းစပ်နိုင်သည်။
<?php
// ဒေတာဘေ့စ် connection တစ်ခုဖန်တီးပါ
$mysqli = new mysqli("localhost", "username", "password", "database_name");
// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($mysqli->connect_error) {
die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
// ဇာတ်ကောင်ကိုသတ်မှတ်ပါ utf8mb4
if (!$mysqli->set_charset("utf8mb4")) {
die("Error loading character set utf8mb4: " . $mysqli->error);
}
// 获取并验证လက်ရှိဇာတ်ကောင်အစုံ
$charset_info = $mysqli->get_charset();
if ($charset_info->charset === "utf8mb4") {
echo "ဇာတ်ကောင်အစုံမှန်ကန်စွာ set ကိုဖြစ်ပါတယ်: " . $charset_info->charset;
} else {
echo "ဇာတ်ကောင်အစုံမမှန်ကန်ပါ, လက်ရှိဇာတ်ကောင်အစုံ: " . $charset_info->charset;
}
// အခြားဒေတာဘေ့စ်စစ်ဆင်ရေးကိုလုပ်ဆောင်ပါ
?>
ဤကုဒ်တွင် utforetset method () နည်းလမ်းဖြင့် The Utf8MB4 မှသတ်မှတ်ထားသည့်စာလုံးကိုသတ်မှတ်ပါ။ အကယ်. ဇာတ်ကောင်အစုံမှန်ကန်စွာသတ်မှတ်ထားပါကပရိုဂရမ်သည်သက်ဆိုင်ရာအချက်ပေးအချက်အလက်များကိုထုတ်ပေးလိမ့်မည်။
အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဇာတ်ကောင်အစုံသည်ကျောက်တုံးများကို carbled code, data :: set_charet () set_charet ( ) set_chariset () ကို အမြဲတမ်းသုံးရန်အကြံပြုသည်။
MySQLI :: SET_CHARSet () နှင့် MySQLI :: Get_charet) နှင့်အတူဒေတာဘေ့စ်ဆက်သွယ်မှုများသည်မှန်ကန်သောဇာတ်ကောင်ကို သုံး. အချက်အလက်များကို encoding အမှားအယွင်းများကို အသုံးပြု. အချက်အလက်များကိုပြန်လည်သိမ်းဆည်းခြင်းနှင့်အချက်အလက်များကိုရှောင်ရှားရန်သေချာစေနိုင်သည်။ ဘာသာစကားမျိုးစုံဇာတ်ကောင်သိုလှောင်မှုနှင့်ပတ်သက်လာလျှင် Emoji Emoji အပါအ 0 င်အထူးအက္ခရာများကိုကိုင်တွယ်နိုင်ရန်အတွက် UTF8MB4 ဇာတ်ကောင်ကိုရွေးချယ်ရန်အကြံပြုသည်။
သက်ဆိုင်သောတက်(ဂ်)များ:
mysqli