PHP error_reporting vs. display_errors
Ist error_reporting(0)
gleiche wie ini_set('display_errors', 0)
? Wenn nicht, was ist der Unterschied?
Ich interessiere mich auch für die Sicherheit dieser code? Kann ich erreichen 'so können böswillige Benutzer die nicht Sonde' mit diesem?
- Der einzige Unterschied ist dieser: "Obwohl display_errors eingestellt werden kann (Laufzeit mit ini_set()), es gewann' T haben keine Auswirkung, wenn das Skript hat fatale Fehler. Dies ist, weil die gewünschte Laufzeit der Aktion nicht ausgeführt werden.".
- das gilt für beide Funktionen. PHP-Dateien werden geparst vollständig, bevor code in dieser Datei ausgeführt wird, so dass jede Funktion, die Sie verwenden, um die fehlerberichterstellung aktivieren wird nicht ausgeführt werden, wenn der parse-Fehler in der gleichen Datei.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Aber Sie sind NICHT identisch, aber in Ihrem Gebrauch haben können dem gleichen Ergebnis.
error_reporting
ist das Niveau der Berichterstattung, KEINER ALLES durch. Dieser bestimmt, welche Arten von Fehlern berichtet (E_NOTICE, E_WARNING, E_ALL, etc..).display_errors
ist, ob diese Fehler (Ausgabe an den browser, CLI, etc...), die gemeldet werden, ab 1.Wenn Sie
error_reporting(E_ALL)
undini_set('display_errors', '0')
Sie können immer noch alle Fehler in der log-Datei aber nicht angezeigt.Mit
error_reporting(0)
Sie erhalten keine Fehler angezeigt oder in die log-und es spielt keine Rolle, die Werte vondisplay_errors
.display_errors
sollten aus sein, die in Ihrer Produktion-Anwendungen, vorzugsweise imphp.ini
so dass Informationen wie Datei-Pfade, Datenbank-Namen und Benutzernamen werden nicht angezeigt. Fehlerberichterstattung gesendet, um das Protokoll ist von Vorteil und sollte nicht ein Sicherheitsrisiko.display_errors
aus in Ihre app oder vorzugsweisephp.ini
. Fehlerberichterstattung gesendet, um das Protokoll ist von Vorteil und sollte nicht ein Sicherheitsrisiko.