Aber was ist, wenn Sie sich @vor die trigger_errorFunktion von PHP stellen ? Ich habe das in einigen Codes gesehen, aber sein Verhalten ist für mich bisher inkonsistent. In einigen Fällen wird der Fehler vom konfigurierten Fehlerbehandler gemeldet, in anderen Fällen scheint er gemeldet zu werden.
Fritzmg
2
Das @wird vorübergehend error_reportingauf 0 gesetzt , aber den Fehler nicht "unterdrücken".
Setzen Sie lieber Null, aber wenn das funktioniert, wusste großartig nichts davon :)
AntonioCS
1
Was ist mit Funktionen, die Sie nicht steuern, wie z. B. Mail? Welche anderen Möglichkeiten gibt es? Ich benutze gerade @, aber es wäre großartig, wenn ich es auf andere Weise tun könnte
Wie alle sagten, stoppt es die Ausgabe von Fehlern für diese bestimmte Funktion. Dies verringert jedoch die Leistung erheblich, da die Fehleranzeigeeinstellung zweimal geändert werden muss. Ich würde empfehlen, Warnungen oder Fehler NICHT zu ignorieren und stattdessen den Code zu korrigieren.
Vielen Dank an alle für Ihre Antworten. Dieser Code gehört nicht mir, ich habe den phpBB-Code nur aus Neugier betrachtet, daher habe ich keine Leistungsprobleme. :) Danke noch einmal.
Antworten:
Das "@" bringt alle PHP-Fehler zum Schweigen, die Ihre Funktion auslösen könnte.
quelle
@
vor dietrigger_error
Funktion von PHP stellen ? Ich habe das in einigen Codes gesehen, aber sein Verhalten ist für mich bisher inkonsistent. In einigen Fällen wird der Fehler vom konfigurierten Fehlerbehandler gemeldet, in anderen Fällen scheint er gemeldet zu werden.@
wird vorübergehenderror_reporting
auf 0 gesetzt , aber den Fehler nicht "unterdrücken".Es bringt Fehler und Warnungen zum Schweigen. Siehe Fehlerkontrolloperatoren .
quelle
Wie bereits beantwortet,
@
wird der Fehler (falls vorhanden) nicht mehr angezeigt.In Bezug auf die Leistung wird dies nicht empfohlen.
Was PHP tut, ist:
Wenn Sie nicht möchten, dass Fehler angezeigt werden, verwenden Sie
error_reporting(0);
.Oder schreiben Sie einfach fehlerfreien Code: P.
quelle
http://www.faqts.com/knowledge_base/view.phtml/aid/18068/fid/38
Alle PHP-Ausdrücke können mit dem Präfix "@" aufgerufen werden, wodurch die Fehlerberichterstattung für diesen bestimmten Ausdruck deaktiviert wird.
quelle
Wie alle sagten, stoppt es die Ausgabe von Fehlern für diese bestimmte Funktion. Dies verringert jedoch die Leistung erheblich, da die Fehleranzeigeeinstellung zweimal geändert werden muss. Ich würde empfehlen, Warnungen oder Fehler NICHT zu ignorieren und stattdessen den Code zu korrigieren.
quelle