Heim >PHP-Framework >YII >Umgang mit Fehlern im Yii-Framework

Umgang mit Fehlern im Yii-Framework

(*-*)浩
(*-*)浩Original
2020-01-08 15:24:172497Durchsuche

Umgang mit Fehlern im Yii-Framework

Yii verfügt über einen integrierten Fehlerhandler, der die Fehlerbehandlung komfortabler macht. Der Yii-Fehlerhandler führt Folgendes aus, um den Fehlerbehandlungseffekt zu verbessern :

Alle nicht schwerwiegenden PHP-Fehler (z. B. Warnungen, Eingabeaufforderungen) werden in verfügbare Ausnahmen umgewandelt. >Ausnahmen und schwerwiegende PHP-Fehler werden angezeigt und detaillierte Funktionsaufrufstapel und Quellcodezeilennummern werden angezeigt im Debug-Modus. Unterstützt die Verwendung dedizierter Controller-Aktionen zur Anzeige von Fehlern

Unterstützt verschiedene Fehlerantwortformate Fehlerhandler Der Fehlerhandler ist standardmäßig aktiviert und kann übergeben werden Definieren Sie die Konstante YII_ENABLE_ERROR_HANDLER im Eingabeskript der Anwendung, um sie zu deaktivieren.

Fehlerhandler verwenden

Fehlerhandler wird als Anwendungskomponente namens errorHandler registriert, die in der Anwendungskonfiguration wie folgt konfiguriert werden kann:

return [
    'components' => [
        'errorHandler' => [
            'maxSourceLines' => 20,
        ],
    ],
];

Mit dem obigen Code werden auf der Ausnahmeseite bis zu 20 Quellcodes angezeigt.

Wie bereits erwähnt, wandelt der Fehlerhandler alle nicht schwerwiegenden PHP-Fehler in abfangbare Ausnahmen um, was bedeutet, dass Sie den folgenden Code zur Behandlung von PHP-Fehlern verwenden können:

use Yii;
use yii\base\ErrorException;
try {
    10/0;
} catch (ErrorException $e) {
    Yii::warning("Division by zero.");
}
// execution continues...

Wenn Sie eine Fehlerseite anzeigen möchten, die dem Benutzer mitteilt, dass die Anfrage ungültig ist oder nicht bearbeitet werden kann, lösen Sie einfach eine HTTP-Ausnahme wie yiiwebNotFoundHttpException aus.

Der Fehlerhandler legt den Antwort-HTTP-Statuscode korrekt fest und verwendet die entsprechende Fehleransichtsseite, um die Fehlermeldung anzuzeigen.

use yii\web\NotFoundHttpException;
throw new NotFoundHttpException();

Das obige ist der detaillierte Inhalt vonUmgang mit Fehlern im Yii-Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn