Heim >Backend-Entwicklung >PHP-Problem >So debuggen Sie PHP
Wie debugge ich ein PHP-Programm?
1. Überprüfen Sie, ob Syntaxfehler vorliegen
php -l test.php
2. Grundlegendes Debugging
Grundlegendes Debugging-API:
var_dump($var);print_r($var);echo $var;
Grundlegende Konfiguration:
display_errors、log_errors、error_reporting、error_log
Hinweis: Manchmal werden Fehler gemeldet wird ausgeschaltet, muss manuell eingeschaltet werden.
Allgemeine Codes:
ini_set("display_errors","On"); error_reporting(E_ALL);
3. Verwenden Sie die Fehlererfassungsfunktion
debug_backtrace
– Generieren Sie einen Backtrace (Backtrace)
debug_print_backtrace
– Einen Traceback drucken.
error_clear_last
– Den letzten Fehler löschen
error_get_last
– Den zuletzt aufgetretenen Fehler abrufen
error_log
– Die Fehlermeldung irgendwohin senden
error_reporting
– Legen Sie fest, welche Art von PHP-Fehlern gemeldet werden sollen.
restore_error_handler
– Stellen Sie die vorherige Fehlerbehandlungsfunktion wieder her.
restore_exception_handler
– Stellen Sie die zuvor definierte Ausnahmebehandlungsfunktion wieder her.
set_error_handler
– Legen Sie eine benutzerdefinierte Fehlerbehandlungsfunktion fest.
set_exception_handler
– Legen Sie eine benutzerdefinierte Ausnahmebehandlungsfunktion fest.
trigger_error
– Erzeugen Sie eine Benutzerebene Fehler-/Warnungs-/Hinweisinformationen
user_error
– Alias von trigger_error
register_shutdown_function('my_shutdown_handler'); function my_shutdown_handler() { $error = error_get_last(); if ($error) { try{ //发送邮件 } catch(Exception $e) { } } return false; }
4. Protokoll
file_put_contents('log.text', var_export($var, 1), FILE_APPEND);
muss ebenfalls vorhanden sein Das konfigurierte Fehlerprotokoll
dient normalerweise dazu, das Fehlerprotokoll von Apache zu überprüfen. Fehler bei der Befehlszeilenausführung können nicht erfasst werden.
5. Verwenden Sie das xdebug-Tool
xdebug_start_trace(); /* 业务代码 */ xdebug_stop_trace();
Empfohlenes Tutorial: PHP-Video-Tutorial
Das obige ist der detaillierte Inhalt vonSo debuggen Sie PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!