PHP တွင် MySQLI extension သည်ဒေတာဘေ့စ်ဆက်သွယ်မှုများ, MySQLI :: stmt_init သည်အများအားဖြင့်ပြင်ဆင်ထားသောကြေညာချက်ကိုစတင်ရန်အသုံးပြုသောဘုံနည်းလမ်းများအနက်မှတစ်ခုဖြစ်သည်။ ၎င်း၏ပြည်တွင်းရေးယန္တရားကိုပိုမိုနားလည်ရန် MySQLI :: stmt_init ၏ကွပ်မျက်ခြင်းလုပ်ငန်းစဉ်ကိုခွဲခြမ်းစိတ်ဖြာရန် Breakpoint Debugging ကိုအသုံးပြုရန်အလွန်အသုံးဝင်သည်။ MySQLI :: stmt_init function ကို breakpoint debugging မှတဆင့်ကွပ်မျက်ခြင်းလုပ်ငန်းစဉ်ကိုမည်သို့နားလည်ရမည်ကိုဤဆောင်းပါးကဤဆောင်းပါးသည်မိတ်ဆက်ပေးလိမ့်မည်။
ဦး စွာ, ကျွန်ုပ်တို့၏ဖွံ့ဖြိုးတိုးတက်မှုပတ်ဝန်းကျင်သည် breakpoint debugging ကိုအထောက်အကူပြုရန်သေချာစေရန်လိုအပ်သည်။ ဘုံ debugging tools များတွင် xdebug နှင့် phppstorm တို့ ပါဝင်သည်။ ဤနေရာတွင်ကျွန်ုပ်တို့သည် phppstorm ကို debugging အတွက် Xdebug နှင့်အတူအသုံးပြုသည်။ ပတ် 0 န်းကျင်ကိုတည်ဆောက်ရန်အဆင့်များမှာဤတွင်ဖြစ်သည်။
XDebug extension ကို install လုပ်ပြီး configure လုပ်ပါ။
PHPPMOMJ တွင် XDebug debugger ကို enable လုပ်ပါ။
Php.ini ဖိုင်ကို debugging function ကိုပုံမှန်လည်ပတ်နိုင်အောင်ပြင်ဆင်ပါ။
MySQLI :: stmt_init function ကိုပြင်ဆင်မှုကြေငြာချက်ကိုအစပြုရန်အသုံးပြုသည်။ ၎င်းကို MySQLI :: preprocessing ထုတ်ပြန်ချက်များ execute လုပ်ရန်ပြင်ဆင်ထားသည် ။ ဤတွင်ရိုးရှင်းသောကုဒ်ဥပမာတစ်ခုရှိသည်။
<?php
$mysqli = new mysqli("localhost", "user", "password", "database");
// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($mysqli->connect_error) {
die("Connection failed: " . $mysqli->connect_error);
}
// အသုံးပြု stmt_init Preprocessing ကြေညာချက်ကိုအစပြု
$stmt = $mysqli->stmt_init();
if ($stmt->prepare("SELECT name FROM users WHERE id = ?")) {
$stmt->bind_param("i", $user_id);
$user_id = 1;
$stmt->execute();
$stmt->bind_result($name);
$stmt->fetch();
echo "User name: " . $name;
} else {
echo "Failed to prepare statement.";
}
?>
ဤဥပမာတွင် stmtt_init ကိုအသုံးပြုပြီး preprocessing statement အရာဝတ်ထုတစ်ခုကိုအစပြုပြီး ပြင်ဆင်ခြင်း function ကို ဖြတ်. SQL မေးမြန်းမှုကိုပြင်ဆင်ပါ။
MySQLI :: stmt_init ကို debug လုပ်ရန်ပထမ ဦး စွာကျွန်ုပ်တို့သည် Code ရှိသင့်လျော်သောနေရာ၌ breakpoints များကိုသတ်မှတ်ရန်လိုအပ်သည်။ PHPPMAM တွင်အောက်ပါအဆင့်များကိုလိုက်နာခြင်းဖြင့် breakpoints များကိုသတ်မှတ်နိုင်သည်။
phppstorm ကိုဖွင့ ်. MySQLI :: stmt_init ခေါ်ဆိုမှုပါရှိသောဖိုင်ကိုရှာပါ။
breakpoint ကိုသတ်မှတ်ရန် STMT_INIT function တွင်ဟုခေါ်သောလိုင်း၏ဘယ်ဘက်ခြမ်းကိုနှိပ်ပါ။
debug session တစ်ခုကိုစတင်ပါ ။
Debugging စတင်ပြီးနောက် Code သည် breakpoint တွင်ကွပ်မျက်ခြင်းဖြင့်ကွပ်မျက်ခြင်း ယခုအချိန်တွင် Phpstorm သည်လက်ရှိကုဒ်၏ကွပ်မျက်အခြေအနေကိုပြသလိမ့်မည်။
stmtt_init ၏ကွပ်မျက်မှုကိုစစ်ဆေးပါ ။ Stmtt_init မှ ပြန်လာသောအရာဝတ်ထုကိုကြည့်ခြင်းအားဖြင့်၎င်းသည်ကြိုတင်ပြင်ဆင်မှုကြေငြာချက်ကိုအောင်မြင်စွာစတင်နိုင်မလားဆိုတာသင်တွေ့နိုင်သည်။ ယခုအချိန်တွင်သင်သည် STMT variable ကို debug 0 င်းဒိုးရှိ STMT variable ကိုကြည့်ခြင်းဖြင့်စစ်ဆေးနိုင်သည်။
ပြင်ဆင်မှု ကိုအကောင်အထည်ဖော်ရန်အကောင်အထည်ဖော်ပါ ။ Breakpoint အနေအထားတွင် Code ကိုအဆင့်ဆင့်အဆင့်ဆင့်ကိုအဆင့်ဆင့်လုပ်ဆောင်ပါ။ ပြင်ဆင်မှု နည်းလမ်းကိုအကောင်အထည်ဖော်ရန်လေ့လာပါ။ အကယ်. မှားယွင်းသော အစာကိုပြန်လည်ရောက်ရှိပါက MySQLI :: အမှား သို့မဟုတ် MySQLI :: MySQLI :: errno ကို သုံးနိုင်သည်။
MySQLI :: stmtt_init သည် preprocessing statement address route address ကိုဖန်တီးရန်မရှိမဖြစ်လိုအပ်တဲ့အသုံးမ 0 င်သောဖော်ပြချက်အရာဝတ်ထုတစ်ခုကိုဖန်တီးရန်အသုံးပြုသည်။ စုံစမ်းမှုကိုအမှန်တကယ်လုပ်ဆောင်သည်မှာ ပြင်ဆင်ခြင်း , bind_param , execute နှင့်အခြားနည်းစနစ်များကိုနောက်ပိုင်းတွင်ခေါ်ယူရန်ဖြစ်သည်။ ထို့ကြောင့် Debugging လုပ်ငန်းစဉ်အတွင်းအရေးအကြီးဆုံးအရာမှာအရေးအကြီးဆုံးမှာခေါ်ဆိုမှု ပြင်ဆင်ခြင်း ကိုအကောင်အထည်ဖော်ရန်ဖြစ်သည်။
ထုတ်ပြန်ချက်များကိုပြင်ဆင်ခြင်း - ပြင်ဆင်ခြင်း function သည် syntax ခွဲခြမ်းစိတ်ဖြာခြင်း, ယခုအချိန်တွင် SQL syntax သည်မှားသည်ဆိုပါက ပြင်ဆင်မှုသည် ကျရှုံးလိမ့်မည်။
Parameter ချည်နှောင်ခြင်းနှင့်ကွပ်မျက်မှု - Bind_param သည် PHP variable များကို SQL ထုတ်ပြန်ချက်များတွင် parameters များကို parameter များကို parameter များကိုသတ်မှတ်ရန်နှင့်စုံစမ်းမှု လုပ်ဆောင်ရန် အသုံးပြုသည်။ ဤအဆင့်များသည်တစ် ဦး ချင်းစီကမည်သို့လုပ်ဆောင်သည်ကိုကြည့်ရှုရန်တစ်ဆင့်ချင်းစီမည်သို့ကွပ်မျက်ခံရသည်။
MySQLI :: stmt_init ကို debing လုပ်ခြင်းနှင့် ကြိုတင်ပြင်ဆင်ခြင်း , bind_param နှင့် execute လုပ်ခြင်း တို့ဖြင့်ပြုလုပ်သောနောက်ဆက်တွဲနည်းလမ်းများနှင့် execute method များပြုလုပ်နိုင်သည် ။ Debugging သည်ကျွန်ုပ်တို့၏အလားအလာရှိသောပြ problems နာများကိုဖြေရှင်းရန်သာမကဒေတာဘေ့စ်အပြန်အလှန်ဆက်သွယ်မှုယန္တရားများကိုပိုမိုနားလည်စေသည်။
Debugging လုပ်နေစဉ်အတွင်း SQL Query များကိုပြင်ဆင်ခြင်းနှင့်ကွပ်မျက်ခြင်းတို့ကိုအဆင့်တစ်ခုစီ၏ပြန်လည်နေရာချထားခြင်းကိုစစ်ဆေးရန်သတိထားပါ။ ဤနည်းအားဖြင့် MySQLI extensions အသုံးပြုခြင်း၏အသေးစိတ်အချက်အလက်များကိုသင်ထိထိရောက်ရောက်နားလည်နိုင်ပြီး Code သည်ဒေတာဘေ့စ်နှင့်ထိရောက်စွာနှင့်လုံခြုံစွာနှင့်အပြန်အလှန်ဆက်သွယ်နိုင်သည်။