ラボ > Laravel、Lumen:エラー関連

Laravelで例外を投げたらエラーになる(use Exception)

「throw new Exception()」したら「Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Class 'App\\〇〇〇\\Exception' not found」とエラー

作成日:2019-12-12, 更新日:2023-01-13

基本

▼下記追加。

use Exception;

経緯

下記のような感じで「throw new Exception()」をしてみた。

try {
  throw new Exception(〇〇〇);
}
catch (Exception $e) {
  // 
}

▼出てきたエラー

local.ERROR: Class 'App\〇〇〇\Exception' not found {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Class 'App\\〇〇〇\\Exception' not found at /var/www/html/src/app/〇〇〇/〇〇〇.php:123)

ファイルをまたぐとき

『「ファイルA」の「try {}」の中で「ファイルB」→エラー』ってとき「ファイルB」にも「use Exception;」が必要

ファイルAの例

~ 省略 ~
use Exception;
~ 省略 ~
try {
  ~ ファイルBのメソッド ~
  throw new Exception(〇〇〇);
}
catch (Exception $e) {
  // 
}
~ 省略 ~

ファイルBの例

「ファイルB」にも「use Exception;」が必要

~ 省略 ~
use Exception;
~ 省略 ~
  public function xxx() {
    ~ 省略 ~
    throw new Exception(〇〇〇);
    ~ 省略 ~
  }
~ 省略 ~