2010-05-26 13 views
6

È possibile scrivere tutti gli errori PHP in MySQL anziché nel file error_log standard. Immagino che sarebbe possibile se avessi scritto il mio gestore di errori da zero, ma ho un sacco di codice legacy e idealmente avrei solo fatto 1 cambiamento globale e sarebbe stato così. Può essere fatto?Emissione di tutti gli errori PHP nel database non error_log

+0

sono sicuro al 99% non si può semplicemente mettere qualcosa in php.ini e hanno accadere. Detto questo, scrivere un gestore di errori personalizzato richiederebbe circa 5 minuti. – Erik

risposta

18

non credo che possa essere fatto senza la costruzione di un proprio gestore di errori, ma tecnicamente, che è l'unico cambiamento globale che stai cercando.

esempio modificato dal manual:

function myErrorHandler($errno, $errstr, $errfile, $errline) 
{ 
    // you'd have to import or set up the connection here 
    mysql_query("INSERT INTO error_log (number, string, file, line) ". 
       "VALUES .....");   

    /* Don't execute PHP internal error handler */ 
    return true; 
} 

poi

// set to the user defined error handler 
$old_error_handler = set_error_handler("myErrorHandler"); 
Problemi correlati