လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> MySQLI :: Debug နှင့်အတူ database-Related ယူနစ်စမ်းသပ်ခြင်းနှင့် debugging များအတွက် phpunit နှင့်အတူ debug

MySQLI :: Debug နှင့်အတူ database-Related ယူနစ်စမ်းသပ်ခြင်းနှင့် debugging များအတွက် phpunit နှင့်အတူ debug

M66 2025-05-17

ဒေတာဘေ့စ်နှင့်သက်ဆိုင်သည့်ယူနစ်စစ်ဆေးမှုများပြုလုပ်သောအခါတစ်ခါတစ်ရံတွင်အထူးသဖြင့်စမ်းသပ်မှုများပျက်ကွက်ခြင်းနှင့်ရှုပ်ထွေးသော SQL operations များပါ 0 င်သည့်အခါအတိအကျဘာကိုဖြစ်ပျက်နေကြကြောင်းပိုမိုနက်ရှိုင်းစွာနားလည်ရန်လိုအပ်သည်။ PHP ၏ MySQLI extension သည်အလွန်လက်တွေ့ကျသော debugging function mySQLI :: debug () debug () debugging ကိုထောက်ပံ့ပေးသည်။ MySQLI :: Debug (Debug) သည် Phpunit ကိုစမ်းသပ်သည့်အခါ PHPunit ကိုစမ်းသပ်ရန်အတွက် debasing လုပ်ငန်းလည်ပတ်မှုများကိုအကောင်အထည်ဖော်ရန် MySQLI :: Debug (Debug) ကိုမည်သို့ပေါင်းစပ်မည်နည်း။

1 ။ MySQLI :: Debug () ဘာတွေလဲ။

MySQLI :: Debug (string $ debug_options) သည် MySQLI အတန်းရှိနည်းလမ်းတစ်ခုဖြစ်သည်။ ၎င်း၏ parameters များသည် output file လမ်းကြောင်းနှင့် log level ကဲ့သို့သော debug အချက်အလက်ပြင်ဆင်မှုကိုဖော်ပြသည့် string တစ်ခုဖြစ်သည်။ ၎င်းကိုသစ်ထုတ်လုပ်ခြင်းကိုအလိုအလျောက်ဖွင့်ဟပြီး MySQL server ၏စုစည်းမှုရွေးချယ်စရာများကိုဖျက်သိမ်းရန်လည်းအထောက်အပံ့ပေးရန်လိုအပ်သည်ကိုသတိပြုသင့်သည်။

 mysqli::debug("d:t:o,/tmp/client.trace");

အတွက်

  • debugging အဘို့ ရပ်တည်

  • thread သတင်းအချက်အလက်များပါသော t ကိုဆိုလိုသည်

  • o ဖိုင်မှ output ကိုဆိုလိုသည်

  • /tmp/client.trace သည် log file သို့လမ်းကြောင်းဖြစ်သည်

2 ။ MySQLI :: Debug (Debug) ကို Phpunit စမ်းသပ်မှုတွင်သုံးပါ

ဒေတာဘေ့စ်နှင့်သက်ဆိုင်သောစစ်ဆေးမှုများအတွက် PHPunit ကိုအသုံးပြုသောအခါ စာမေးပွဲ () သို့မဟုတ် setupbeforeclass () ကို debugging လုပ်နိုင်သည်။ ဤနည်းအားဖြင့် Debug သတင်းအချက်အလက်ကိုစစ်ဆေးရန်အတွက်စစ်ဆေးမှုကိုစစ်ဆေးရန်အတွက်စစ်ဆေးမှုပြုလုပ်သောအခါတိုင်းမှတ်တမ်းတင်လိမ့်မည်။

ဤတွင်အမှန်တကယ်ဥပမာတစ်ခုဖြစ်သည်။

 use PHPUnit\Framework\TestCase;

class DatabaseTest extends TestCase
{
    private static $mysqli;

    public static function setUpBeforeClass(): void
    {
        // Debug output ကို Enable လုပ်ပါ
        mysqli::debug("d:t:o,/tmp/php-mysqli-debug.log");

        self::$mysqli = new mysqli("localhost", "user", "password", "testdb");

        if (self::$mysqli->connect_error) {
            die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . self::$mysqli->connect_error);
        }
    }

    public function testInsertData()
    {
        $stmt = self::$mysqli->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
        $stmt->bind_param("ss", $name, $email);

        $name = "အသုံးပြုသူကိုစစ်ဆေးပါ";
        $email = "test@m66.net";

        $this->assertTrue($stmt->execute());
    }

    public static function tearDownAfterClass(): void
    {
        self::$mysqli->close();
    }
}

3 ။ မှတ်စုဖို့အရာ

  1. log file permissions များ - PHP သည် /TMP/php-mysqli-deblibugubugug.log ကဲ့သို့သောသတ်မှတ်ထားသောမှတ်တမ်းဖိုင်သို့စာရေးရန်ခွင့်ပြုချက်ရှိကြောင်းသေချာပါစေ။

  2. ထုတ်လုပ်မှုပတ် 0 န်းကျင်တွင်သတိထားပါMySQLI :: Debug () Debug (Debug) ကိုအဓိကအားဖြင့်ဖွံ့ဖြိုးတိုးတက်မှုနှင့် debugging အဆင့်များတွင်အသုံးပြုသည်။ အထိခိုက်မခံသောသတင်းအချက်အလက်များကိုယိုစိမ့်မှုများကိုရှောင်ရှားရန်ထုတ်လုပ်မှုပတ်ဝန်းကျင်တွင်၎င်းကိုဖွင့်ရန်မလိုအပ်ပါ။

  3. ဖိုင်များကို debugging လုပ်ခြင်းဆိုင်ရာအကြောင်းအရာများရှိသည် - debugging files များသည်လျင်မြန်စွာကြီးမားလာနိုင်သည်။ အထူးသဖြင့်ဒေတာဘေ့စ်စမ်းသပ်မှုများစွာကိုလုပ်ဆောင်သောအခါ,

4 ။ ရလဒ်များကို debugging ရလဒ်များကိုခွဲခြမ်းစိတ်ဖြာခြင်း

/tmp/php-mysqli-debug.log ဖိုင်ကိုဖွင့်ပြီးနောက်တွင်အသေးစိတ်အချက်အလက်များကိုသင်တွေ့ရလိမ့်မည်။

  • တစ်ခုချင်းစီကိုဆက်သွယ်မှုတည်ထောင်ခြင်းနှင့်ပိတ်ခြင်း

  • စုံစမ်းမှုကြေငြာချက်ဆိုင်ရာလုပ်ဆောင်မှုအခြေအနေ

  • parameter သည်စည်းနှောင်ခြင်းနှင့်ကွပ်မျက်လုပ်ငန်းစဉ်

  • Thread အချက်အလက်များစသည်တို့

ဤအချက်အလက်သည်သင်၏ PHP အစီအစဉ်သည် MySQL နှင့်မည်သို့ဆက်သွယ်သည်ကိုပိုမိုရှင်းလင်းစွာနားလည်နိုင်သည်။

5 ။ အကျဉ်းချုပ်

MySQLI :: Debug (Debug) ကိုအသုံးပြုခြင်းသည် PHPunit နှင့်အတူအထူးသဖြင့်ဒေတာဘေ့စ်ယာဉ်မောင်းများ, orms များကိုတီထွင်သောအခါ, အကယ်. သင်သည်ဒေတာဘေ့စ်နှင့်သက်ဆိုင်သောစမ်းသပ်မှုများနှင့် debugging လုပ်ခြင်းကိုပြုလုပ်ပါကဤနည်းကိုကြိုးစားကြည့်ပါကပြ problems နာများကိုဖြေရှင်းရန်အချိန်များစွာသက်သာစေရန်ကူညီနိုင်သည်။

MySQLI :: Debug (Debug) ၏အသုံးပြုမှုအကြောင်းပိုမိုလေ့လာရန် ကျေးဇူးပြု. တရားဝင် PHP စာရွက်စာတမ်းကိုရည်ညွှန်းပါ။ : https://www.php.net/mysqlqli.debubuggug.php