Yii フレームワークでエラーを処理する方法

(*-*)浩
リリース: 2020-01-08 15:24:17
オリジナル
2460 人が閲覧しました

Yii フレームワークでエラーを処理する方法

Yii には、エラー処理をより便利にする組み込みエラー ハンドラがあります。Yii エラー ハンドラは、エラー処理効果を向上させるために次のことを行います:

致命的ではないすべての PHP エラー (警告、プロンプトなど) は取得可能な例外に変換されます。 例外と致命的な PHP エラーが表示され、詳細な関数呼び出しスタックとソース コードが表示されますデバッグモードでは行が表示されます。

専用コントローラー操作を使用したエラー表示のサポート;

さまざまなエラー応答形式のサポート;

エラー ハンドラー エラー ハンドラーはデフォルトで有効になっており、渡すことができます。これを無効にするには、アプリケーションのエントリ スクリプトで定数 YII_ENABLE_ERROR_HANDLER を定義します。

エラー ハンドラーの使用

エラー ハンドラーは、errorHandler という名前のアプリケーション コンポーネントとして登録されます。これは、アプリケーション構成で次のように構成できます:

return [
    'components' => [
        'errorHandler' => [
            'maxSourceLines' => 20,
        ],
    ],
];
ログイン後にコピー
上記のコードを使用すると、例外ページには最大 20 個のソース コードが表示されます。

前に述べたように、エラー ハンドラーは、致命的ではないすべての PHP エラーをキャッチ可能な例外に変換します。つまり、次のコードを使用して PHP エラーを処理できます:

use Yii;
use yii\base\ErrorException;
try {
    10/0;
} catch (ErrorException $e) {
    Yii::warning("Division by zero.");
}
// execution continues...
ログイン後にコピー

リクエストが無効であるか処理できないことをユーザーに伝えるエラー ページを表示したい場合は、[[yii\web\NotFoundHttpException]] などの HTTP 例外をスローします。

エラー ハンドラーは、応答 HTTP ステータス コードを正しく設定し、適切なエラー ビュー ページを使用してエラー メッセージを表示します。 rree

以上がYii フレームワークでエラーを処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート