Heim >Backend-Entwicklung >PHP-Tutorial >So erkennen Sie Fehler in PHP
In diesem Artikel wird hauptsächlich die Methode zum Erkennen von Fehlern in PHP vorgestellt, die einen gewissen Referenzwert hat. Jetzt können Freunde in Not darauf verweisen.
Fehlerausgabe deaktivieren
error_reporting(0);
Fehlerhandler festlegen
set_error_handler('errorHandler');
Funktion, die am Ende des Skripts ausgeführt wird
register_shutdown_function('fatalErrorHandler');
Fehlerbehandlung
/** * @param int $err_no 错误代码 * @param string $err_msg 错误信息 * @param string $err_file 错误文件 * @param int $err_line 错误行号 * @return string */ function errorHandler($err_no = 0, $err_msg = '', $err_file = '', $err_line = 0) { $log = [ '['.date('Y-m-d h-i-s').']', '|', $err_no, '|', $err_msg, '|', $err_file, '|', $err_line ]; $log_path = './test.txt'; error_log(implode(' ',$log)."\r\n",3, $log_path); }
Schwerwiegende Fehler erkennen
function fatalErrorHandler() { $e = error_get_last(); var_export($e); switch ($e['type']) { case 1: errorHandler($e['type'], $e['message'], $e['file'], $e['line']); break; } }
class DemoClass_1 { public function index() { //这里发生一个警告错误,出发errorHandler echo $undefinedVarible; } }
Hier ist ein Warnfehler aufgetreten, der von errorHandler erfasst wurde
$demo_1 = new DemoClass_1(); $demo_1->index();
Es tritt ein schwerwiegender Fehler auf, das Skript wird nicht mehr ausgeführt und löst den fatalErrorHandler aus
$demo_2 = new DemoClass_2(); $demo_2->index();
Nach dem Öffnen von test.txt lautet die Ausgabe:
[2018-06-12 05-49-11] | 8 | Undefined variable: undefinedVarible | /Users/darry/htdocs/test.php | 57 [2018-06-12 05-49-11] | 1 | Uncaught Error: Class 'DemoClass_2' not found in /Users/darry/htdocs/test.php:67 Stack trace: #0 {main} thrown | /Users/darry/htdocs/test.php | 67
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.
Verwandte Empfehlungen:
Nginx SSL schnelle bidirektionale Authentifizierungskonfiguration (Skript)
Rekursion basierend auf der PHP-Datenstruktur
Über die Verwendung des Thinkphp-Verhaltens
Das obige ist der detaillierte Inhalt vonSo erkennen Sie Fehler in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!