Rumah >pangkalan data >tutorial mysql >Bolehkah PHP Log Ralat Terus ke Pangkalan Data MySQL?

Bolehkah PHP Log Ralat Terus ke Pangkalan Data MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-06 08:02:03442semak imbas

Can PHP Log Errors Directly to a MySQL Database?

Melog Ralat PHP ke Pangkalan Data Bukannya error_log

Adakah layak untuk mengkonfigurasi PHP untuk log ralat terus ke pangkalan data MySQL dan bukannya fail log_ralat lalai? Walaupun melaksanakan pengendali ralat tersuai adalah pendekatan yang berdaya maju, ini memerlukan pengubahsuaian kod yang ketara. Adakah terdapat penyelesaian yang lebih global?

Jawapan:

Malangnya, perkara ini tidak mungkin dilakukan tanpa membuat pengendali ralat tersuai. Walau bagaimanapun, pengendali ralat tersuai ini berkesan akan berfungsi sebagai "satu perubahan global" yang dikehendaki.

Contoh yang diubah suai daripada manual PHP menunjukkan cara ini boleh dicapai:

function myErrorHandler($errno, $errstr, $errfile, $errline)
{
     // Establish a connection to the MySQL database here
     mysql_query("INSERT INTO error_log (number, string, file, line) ".
                 "VALUES .....");         

    /* Suppress PHP internal error handler from executing */
    return true;
}

Untuk mengaktifkan pengendali ralat tersuai:

// Assign the custom error handler
$old_error_handler = set_error_handler("myErrorHandler");

Atas ialah kandungan terperinci Bolehkah PHP Log Ralat Terus ke Pangkalan Data MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn