Mysqli atau Die: Mestikah Ia Sentiasa Membawa kepada Penamatan?
Dalam MySQLi, fungsi mysqli_query() selalunya disertakan dengan or die () pernyataan untuk mengendalikan ralat. Walau bagaimanapun, pendekatan ini menimbulkan persoalan: Adakah wajib untuk mematikan skrip sekiranya berlaku ralat?
Alternatif kepada atau mati()
PHP menawarkan beberapa alternatif untuk penamatan mendadak yang disebabkan oleh atau mati(). Satu pilihan adalah untuk mengkonfigurasi mysqli untuk membuang pengecualian pada ralat. Dengan menggunakan fungsi mysqli_report dan menetapkan bendera kepada MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT, sebarang ralat MySQLi akan mencetuskan pengecualian.
Pendekatan ini membolehkan pengendalian ralat yang lebih anggun, seperti mengelog ralat ke jadual tertentu. Kod berikut menunjukkan cara untuk mengelog ralat menggunakan fungsi tersuai:
function log_mysqli_error($query, $error) { // Write the error to a log file or table } try { $update_result = mysqli_query($link, $sql_update_login); } catch (mysqli_sql_exception $e) { log_mysqli_error($e->getQuery(), $e->getMessage()); }
Kelebihan Pengendalian Pengecualian
Penggunaan pengecualian menawarkan beberapa faedah:
Kesimpulan
Walaupun mysqli atau die pernah menjadi amalan biasa, ia telah menjadi lapuk kerana batasan dan akibat negatifnya. Dengan memanfaatkan pengendalian pengecualian dan pengelogan ralat tersuai, pembangun boleh mengurus ralat MySQLi dengan lebih berkesan, memastikan kestabilan dan kebolehpercayaan aplikasi mereka.
Atas ialah kandungan terperinci MySQLi atau Die: Adakah Penamatan Skrip Sentiasa Diperlukan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!