Ralat: Objek Kelas mysqli_result Tidak Dapat Ditukar kepada Rentetan
Apabila melaksanakan pertanyaan MySQL menggunakan fungsi mysqli_query(), anda boleh menghadapi ralat berikut: "Objek kelas mysqli_result tidak dapat ditukar kepada rentetan". Ralat ini berlaku disebabkan oleh salah faham jenis output yang dikembalikan oleh fungsi.
Punca:
Fungsi mysqli_query() tidak mengembalikan rentetan; sebaliknya, ia mengembalikan sumber objek yang mewakili hasil pertanyaan. Menggunakan objek ini sebagai rentetan, seperti yang dicuba dalam kod yang disediakan, mengakibatkan ralat.
Penyelesaian:
Untuk menyelesaikan ralat ini, anda perlu mengendalikan dengan betul sumber objek dikembalikan oleh mysqli_query(). Anda boleh melakukan ini dengan mengulangi baris hasil dan mengakses nilainya:
$result = mysqli_query($con, "SELECT classtype FROM learn_users WHERE username='abcde'"); while ($row = $result->fetch_assoc()) { echo $row['classtype'] . "<br>"; }
Dalam kod yang diperbetulkan ini, kami menggunakan gelung sementara untuk mengulangi setiap baris dalam objek hasil, mengekstrak nilai lajur jenis kelas dan memaparkannya. Pendekatan ini memastikan bahawa hasilnya dipaparkan sebagai rentetan.
Atas ialah kandungan terperinci Mengapa Saya Mendapat 'Objek kelas mysqli_result tidak boleh ditukar kepada rentetan' Apabila Menggunakan mysqli_query()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!