Heim  >  Artikel  >  Backend-Entwicklung  >  Yii kann die Ausnahmelösung nicht abfangen

Yii kann die Ausnahmelösung nicht abfangen

不言
不言Original
2018-07-10 15:10:372490Durchsuche

In diesem Artikel wird hauptsächlich die Lösung für das Problem vorgestellt, dass Yii die Ausnahme nicht abfangen kann. Jetzt kann ich es mit Ihnen teilen.

Viele Studenten sagten, dass yii2 Kann es nicht fangen. Nach dem Lesen der meisten Fragen werden sie durch ein falsches Verständnis von „catch“ verursacht. Beispielsweise wird die Frage:

//a文件: 
function a() {
  throw new \yii\web\HttpException('我是数据库异常');
}

//b文件:
use yii\db\Exception;

try{
  a();
}
catch(Exception $e)
{
  echo "捕获到异常了";
}

jedoch nicht ausgegeben, da das 捕获到异常了 von catch bezieht sich tatsächlich auf Catch-Ausnahmen, die von Exception ausgelöst werden, kann jedoch keine von HttpException ausgelösten Ausnahmen abfangen. Alle Ausnahmen in yiidbException

werden von yii geerbt, daher gibt es zwei Umschreibungsmethoden. Exception

Methode 1:

catch(\yii\web\HttpException $e)
Methode 2:

catch(\Exception $e)
Das Obige ist der gesamte Inhalt dieses Artikels, der für das Lernen aller hilfreich sein wird Bitte achten Sie auf PHP Chinese Net!

Verwandte Empfehlungen:

So verwenden Sie try_catch in yii2-wx

Das obige ist der detaillierte Inhalt vonYii kann die Ausnahmelösung nicht abfangen. 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