PHP စီမံကိန်းကိုတီထွင်သောအခါ MySQL ဆာဗာ၏ဗားရှင်းအချက်အလက်များရရှိရန် MySQL_GEget_server_info () ကို အသုံးပြုရန်အတွက်ဖြစ်လေ့ရှိသည်။ သို့သော်တစ်ခါတစ်ရံတွင်ကျွန်ုပ်တို့သည် function မှပြန်လာသောဗားရှင်းနံပါတ်သည်အပိုနေရာများပါ 0 င်သည်။ MySQL server အတွက်ဗားရှင်းအချက်အလက်များကိုကျွန်ုပ်တို့အတိအကျရယူရန်နှင့်လုပ်ငန်းစဉ်ဆိုင်ရာအချက်အလက်များကိုသေချာစွာရယူနိုင်ရန်ဤခြွင်းချက်များကိုမည်သို့ကိုင်တွယ်ရမည်ကိုဤဆောင်းပါးတွင်ဆွေးနွေးထားသည်။
MySQL_Get_server_info () function သည် MySQL ဆာဗာ၏ဗားရှင်းအချက်အလက်များနှင့်ပြန်လာပုံစံမှာ -
5.7.32-log
သို့မဟုတ်အလားတူ strings ။ ဤဗားရှင်းကိန်းဂဏန်းများတွင်ဗားရှင်းနံပါတ်ကိုယ်တိုင်နှင့်ဖြစ်နိုင်သမျှဖြစ်နိုင်သော -LOG နောက်ဆက် (ဆိုလိုသည်မှာ logging function ကို MySQL ဆာဗာတွင်ဖွင့်ထားသည်) သို့သော်အချို့ဖြစ်ရပ်များတွင်ပြန်လည်နေရာချထားခြင်းတွင်နောက်ထပ်နေရာများတွင်နေရာများပါ 0 င်နိုင်သည်။
အချို့ဖြစ်ရပ်များတွင် MySQL_GEget_server_info မှပြန်လာသောဗားရှင်းအချက်အလက်များသည်မလိုအပ်သောနေရာများရှိနိုင်သည်။ ဥပမာအားဖြင့်:
" 5.7.32-log "
ဒီကိစ္စမှာ PHP ရဲ့ ချုံ့ခြင်း () function ကိုသုံးနိုင်အောင်အစခုစလုံးကိုဖယ်ရှားဖို့ကျွန်ုပ်တို့ကိုသုံးနိုင်သည်။
$version = mysql_get_server_info();
$version = trim($version);
echo $version;
ဤနည်းအားဖြင့်ကျွန်ုပ်တို့ရရှိသောဗားရှင်းနံပါတ်သည်အပိုနေရာများအခမဲ့ဖြစ်ကြောင်းသေချာစေနိုင်သည်။
အာကာသပြ issue နာအပြင်ဗားရှင်းနံပါတ်နံပါတ်သည်တစ်ခါတစ်ရံကျွန်ုပ်တို့မျှော်လင့်ထားသည့်အတိုင်းမကောင်းသည်။ ဥပမာ MySQL ၏ဗားရှင်းများသည် -log ကဲ့သို့သောနောက်ဆက်တွဲများပါ 0 င်နိုင်သည်။ ဗားရှင်းနံပါတ်၏ပုံစံကိုပေါင်းစည်းရန်ကျွန်ုပ်တို့သည်အဓိကဗားရှင်းအချက်အလက်များကိုထုတ်ယူရန်နှင့်နောက်ဆက်ကိုလျစ်လျူရှုရန်ပုံမှန်အသုံးအနှုန်းများကိုသုံးနိုင်သည်။
ကျွန်ုပ်တို့သည်ဗားရှင်းနံပါတ်၏ပုံစံကိုပေါင်းစည်းလိုပါကအဓိကဗားရှင်းနံပါတ်အပိုင်းကိုသာထိန်းသိမ်းထားသည် ။ အောက်ပါကုဒ်ကိုသုံးနိုင်သည်။
$version = mysql_get_server_info();
$version = trim($version); // နေရာများကိုဖယ်ရှားပါ
// ပုံမှန်အသုံးအနှုန်းကိုအသုံးပြုပြီးဗားရှင်းနံပါတ်စည်ကိုထုတ်ယူပါ
if (preg_match('/^(\d+\.\d+\.\d+)/', $version, $matches)) {
$version = $matches[1]; // အဓိကဗားရှင်းနံပါတ်ကိုရယူပါ
} else {
$version = 'Unknown Version'; // ခြွင်းချက်ကိုင်တွယ်
}
echo $version;
ဤကုဒ်တွင်ကျွန်ုပ်တို့သည်ပုံမှန်အသုံးအနှုန်းကို အသုံးပြု . ဗားရှင်းနံပါတ်၏အဓိကအပိုင်းနှင့်ကိုက်ညီရန် (\ d + \ ။ \ d + \ ။ အကယ်. ပွဲကိုအောင်မြင်စွာအောင်မြင်ပါက version backbone ကိုထုတ်ယူပြီးအသုံးပြုသည် (ဥပမာ, 5.7.32 ) ။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ခြွင်းချက်ပုံစံကိုဗားရှင်းနံပါတ်ကိုကိုင်တွယ်ဖြေရှင်းနိုင်ပြီးရရှိသောဗားရှင်းနံပါတ်သည်မျှော်လင့်ချက်များနှင့်အညီသေချာအောင်လုပ်နိုင်သည်။
အချို့ဖြစ်ရပ်များတွင် MySQL_Get_server_info မှပြန်လာသောဗားရှင်းနံပါတ်သည်ဒိုမိန်းအမည်များကဲ့သို့တိကျသောသတ်မှတ်ချက်များကိုသယ်ဆောင်နိုင်သည်။ သင်၏ PHP code တွင် URL တစ်ခုတွင်အချို့သော URL ကိုအသုံးပြုရန်လိုအပ်ပြီး၎င်းကို Gitbox.net ဖြင့် domain name ကိုအစားထိုးရန်လိုအပ်သည်ဆိုပါစို့။ ဤပြ problem နာကိုကိုင်တွယ်ရန် strip_replace () function ကိုသုံးနိုင်သည်။
ဥပမာအားဖြင့်, ပြန်လာတန်ဖိုးမှာအောက်ပါ URL ပါ 0 င်ပါက -
http://mysqlserver.local/5.7.32-log
အောက်ပါကုဒ်နံပါတ်ဖြင့်ဒိုမိန်းအမည်ကိုအစားထိုးနိုင်သည်။
$version = mysql_get_server_info();
$version = trim($version); // နေရာများကိုဖယ်ရှားပါ
// ပြန်လည်နေရာချ URL အတွက်ဒိုမိန်းအမည် gitbox.net
$version = str_replace('mysqlserver.local', 'gitbox.net', $version);
echo $version;
ဤနည်းလမ်းသည်မည်သည့် domain name သို့မဟုတ် url ကိုဗားရှင်းနံပါတ်တွင်မည်သည့်နေရာတွင်မပါ 0 င်ပါကဒိုမိန်းအမည်၏ရှေ့နောက်ညီညွတ်မှုကိုသေချာစေရန် GitBox.net ဖြင့်အစားထိုးလိမ့်မည်။
MySQL_GEget_server_info () function ကိုရိုးရိုးရှင်းရှင်းသုံးပြီးလွယ်ကူသော်လည်းအချို့သောကိစ္စရပ်များတွင်ပြန်လာသောဗားရှင်းအချက်အလက်များတွင်အပိုနေရာများ, Domain Name ကိုအစားထိုးရန်နေရာများနှင့် strow'replace () ၏ပင်စည်ကိုအစားထိုးရန်နေရာများနှင့် strip_replace () ကို အစားထိုးရန်အတွက်ပုံမှန်အသုံးအနှုန်းများကို အသုံးပြု. ပုံမှန်အသုံးအနှုန်းများနှင့် strow_replace ()) ကိုတူညီစွာဖြည့်ဆည်းပေးနိုင်ရန်အတွက်ဖြစ်သည်။
ဤဆောင်းပါးတွင်ဖော်ပြထားသောဖြေရှင်းနည်းများသည် MySQL ဗားရှင်းနံပါတ်အမျိုးအစားကိုပိုမိုကောင်းမွန်စွာကိုင်တွယ်ဖြေရှင်းနိုင်ရန်နှင့်သင်၏ကုဒ်၏တည်ငြိမ်မှုနှင့်ထိန်းသိမ်းခြင်းကိုတိုးတက်စေနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။