ホームページ >バックエンド開発 >PHPチュートリアル >Handler.phpの38行目でlaravel 5例外FatalErrorExceptionを解決する方法

Handler.phpの38行目でlaravel 5例外FatalErrorExceptionを解決する方法

小云云
小云云オリジナル
2018-01-06 16:03:341590ブラウズ

この記事では、laravel 5の例外エラー「Handler.php」の38行目「FatalErrorException」の解決方法を中心に紹介しています。 困っている方はぜひ参考にしてください。皆さんのお役に立てれば幸いです。

前書き

この記事では主に、Handler.php 行 38 の laravel5 例外エラー FatalErrorException の解決策を紹介します。これは参考と学習のために共有されています。これ以上の苦労はせずに、詳細な紹介を見てみましょう。

1. エラーメッセージ

FatalErrorException in Handler.php line 38:
Uncaught TypeError: Argument 1 passed to App\Exceptions\Handler::report() must be an instance of Exception, instance of Error given, called in D:\www\activity\vendor\compiled.php on line 1817 and defined in D:\www\activity\app\Exceptions\Handler.php:38
Stack trace:
#0 D:\www\activity\vendor\compiled.php(1817): App\Exceptions\Handler->report(Object(Error))
#1 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleException(Object(Error))
#2 {main}
thrown

原因: D: wwwactivityvendorcompiled.php の 1817 行目の変数 $e は、Exception のインスタンス オブジェクトではありません (エラー メッセージの翻訳...^.^笑い)

2.

エラー プロンプトに変数 $e のインスタンス判定を追加します。例外タイプではない場合は、新しいものを作成します

if (!$e instanceof \Exception) {
 $e = new FatalThrowableError($e);
}

新しいものの後の様子:

public function handleException($e)
{
 if (!$e instanceof \Exception) {
  $e = new FatalThrowableError($e);
 }
 $this->getExceptionHandler()->report($e);
 if ($this->app->runningInConsole()) {
  $this->renderForConsole($e);
 } else {
  $this->renderHttpResponse($e);
 }
}

関連する推奨事項:

iis 7 5.4環境でlaravelをインストールする方法の詳細な説明

Laravel 5のパフォーマンスを向上させるための実践的なヒント

laravel 5.1使用時の「サポートされている暗号化ツールが見つかりません」エラーの解決策

以上がHandler.phpの38行目でlaravel 5例外FatalErrorExceptionを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。