この記事では主に Yii がキャッチできない例外の解決策を紹介します。これには特定の参考値があります。今私はそれをあなたに共有します。困っている友達は参考にしてください。
多くの学生は yii2 がキャッチできないと言っています例外は、ほとんどの問題を読んだ後ですが、catch の誤った理解によって引き起こされます。たとえば、次の問題:
//a文件: function a() { throw new \yii\web\HttpException('我是数据库异常'); } //b文件: use yii\db\Exception; try{ a(); } catch(Exception $e) { echo "捕获到异常了"; }
しかし、出力はありません例外はキャッチされます
なぜなら、catch
の Exception
は、実際には yii\db\Exception
によってスローされた例外をキャッチすることを指しており、HttpException によってスローされた例外をキャッチすることはできません。
yii
の例外はすべて Exception
から継承されるため、書き換え方法は 2 つあります。
方法 1:
catch(\yii\web\HttpException $e)
方法 2:
catch(\Exception $e)
以上がこの記事の全内容です。皆様の学習にお役に立てれば幸いです。その他の関連コンテンツはこちら、PHP中国語ネットに注目してください!
関連する推奨事項:
以上がYii は例外解決策をキャッチできませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。