Menukar MySQL kepada MySQLi
Berdasarkan kod yang disediakan, ia pada mulanya mungkin kelihatan semudah menggantikan mysql_query($sql); dengan mysqli_query($sql);. Walau bagaimanapun, untuk penukaran lengkap kepada MySQLi, pengubahsuaian lanjut diperlukan.
Penggantian Fungsi:
Langkah pertama ialah menggantikan setiap fungsi mysql_* dengan mysqli_* yang sepadan. rakan sejawat. Ringkasan Fungsi Sambungan MySQLi menyediakan penyenaraian yang komprehensif untuk tujuan ini.
Pemilihan Pangkalan Data:
Tidak seperti MySQL, MySQLi membenarkan anda menentukan pangkalan data apabila menyambung menggunakan parameter keempat ke mysqli_connect. Sebagai alternatif, anda masih boleh menggunakan fungsi mysqli_select_db jika lebih suka.
Pertimbangan Tambahan:
Contoh:
Berikut ialah kod yang disediakan ditukar kepada MySQLi:
// Header file with the database configuration $DB['dbName'] = "emails"; $DB['host'] = "localhost"; $DB['user'] = "root"; $DB['pass'] = ""; // Establish a connection to the database $link = mysqli_connect($DB['host'], $DB['user'], $DB['pass'], $DB['dbName']); // Query execution function function executeQuery($sql) { $result = mysqli_query($link, $sql); if (mysqli_error($link)) { $error = '<BR><center><font size="+1" face="arial" color="red">An Internal Error has Occured.<BR> The error has been recorded for review</font></center><br>'; if ($_SESSION['auto_id'] == 1) { $sql_formatted = highlight_string(stripslashes($sql), true); $error .= '<b>The MySQL Syntax Used</b><br>' . $sql_formatted . '<br><br><b>The MySQL Error Returned</b><br>' . mysqli_error($link); } die($error); } return $result; } // Example query $sql = 'SELECT auto_id FROM friend_reg_user WHERE auto_id=' . $info['auto_id']; $result_member = executeQuery($sql); if ($line_member = mysqli_fetch_array($result_member)) { extract($line_member); } else { header("location: index.php"); exit; } ?>
Setelah penukaran selesai, uji skrip anda untuk memastikan semuanya berfungsi dengan betul.
Atas ialah kandungan terperinci Bagaimana untuk Berhijrah dengan Berkesan dari MySQL ke MySQLi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!