Ist es möglich, dass alle PHP-Fehler in MySQL anstatt in die Standarddatei error_log geschrieben werden. Ich denke, das wäre möglich, wenn ich meinen eigenen Fehler-Handler von Grund auf neu schreiben würde, aber ich habe eine Menge Legacy-Code installiert und im Idealfall würde ich nur eine globale Änderung vornehmen und das wäre es. Kann das gemacht werden?Ausgabe aller PHP-Fehler in die Datenbank nicht error_log
6
A
Antwort
18
Ich glaube nicht, es ohne den Aufbau einer eigenen Fehlerbehandlung durchgeführt werden kann, aber das ist die eine globale Veränderung Sie suchen technisch.
Modifiziertes Beispiel aus den 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;
}
dann
// set to the user defined error handler
$old_error_handler = set_error_handler("myErrorHandler");
2
Es sieht aus wie die PHP-Funktion set_error_handler
könnte tun, was Sie suchen. Im ersten Beispiel können Sie einige mysql-Einfügungen hinzufügen, um Ihre Fehler in eine Datenbank zu schreiben.
I 99% positiv bin, kann man nicht einfach in PHP.ini etwas setzen und es hat passieren. Das heißt, das Schreiben eines benutzerdefinierten Error-Handlers würde ungefähr 5 Minuten dauern. – Erik