Ich habe eine Legacy-App, für die register_globals
und magic_quotes_gpc
aktiviert werden müssen. Ich habe mein error_reporting
auf E_ALL & ~E_DEPRECATED
gesetzt, weil ich immer noch Warnungen sehen möchte.
Wenn ich die PHP CLI ausführe, bekomme ich Folgendes:
%Vor% Warum werden die veralteten Nachrichten als Warnungen angezeigt? Sollten sie nicht in der E_DEPRECATED
Ebene sein?
Es scheint, dass ich keine Warnungen zeigen muss, damit sie weggehen
%Vor% Ich könnte mein error_reporting
in E_ALL & ~E_DEPRECATED & ~E_WARNING
ändern, aber dann würde es keine Warnungen für meine Webanwendung anzeigen. Irgendwelche Vorschläge? Muss ich ein separates php.ini
für die CLI verwenden?
Die beste Antwort
[2009-09-07 08:42 UTC] [email protected] Ja. Es ist nicht E_DEPRECATED, es ist E_WARNING und das wird sich nicht ändern.
[2010-03-23 14:26 UTC] [email protected] aks bei esoft dot dk & gt; Wenn dies in der Dokumentation tatsächlich der Fall ist, melden Sie es als separates Problem, anstatt einen bereits geschlossenen Bericht zu stoßen.
Sieht so aus, als müssten Sie akzeptieren, wie sich das Verhalten verhält.
Die Änderungen gelten nur für v6
Sie könnten etwas Glück haben, die Anzeige von Startfehlern auszuschalten . Die Fehler sollten weiterhin in Ihrem Fehlerprotokoll protokolliert werden, sie werden jedoch nicht in der Ausgabe Ihrer Anwendung angezeigt.
Es gilt als beste Methode, auch keines zu verwenden. Sie sind E_WARNING
s, weil das die Art von Fehlern sind, die die Entwickler ausgewählt haben (es ist willkürlich, eine auf der anderen Ebene zu verwenden).
Ich empfehle dringend, dass Sie sicherstellen, dass diese Funktionen in Ihrer Konfiguration deaktiviert sind oder, wenn Sie es nicht vermeiden können, deaktivieren Sie diese Arten von Warnungen in der Konfiguration. Andernfalls riskieren Sie, dass es eine AJAX-Anfrage ruiniert. Wir alle müssen damit fertig werden.
Sie könnten versuchen, Ihren Fehlerhandler mit
zu registrieren %Vor%und myFunc ist etwas wie:
%Vor%Wenn also die Zeichenfolge "register_globals" nicht gefunden wird, gibt func den Wert false zurück, und die Standardfehlerbehandlung beginnt. Andernfalls wird nur true zurückgegeben und nichts passiert.
Tags und Links php