Laravel: 更改异常处理程序的位置 class
Laravel: changing the location of the Exception handler class
我们正在重组应用程序的文件夹布局,使其更符合 DDD
域驱动程序设计理念。
例如
/app
/Users
/Jobs
/Authentication
/Http
/Console
/...
/bootstrap
/config
/...
尽管我们遇到的一个问题是重新定位 /Exceptions/Handler.php
class。我们的视图会将其重命名为 ExceptionHandler
并将其放置在 /app
目录的根目录中。
我们得到
PHP Fatal error: Uncaught ReflectionException: Class
App\Exceptions\Handler does not exist ...
搬迁后出现错误。
我假设 Laravel 非常依赖该文件位于该确切位置,对吗?
您还必须更新它在服务容器中的绑定。
下面的示例来自 Laravel 5.2 但我猜它应该对所有 Laravel 5+.
都是一样的
// bootstrap/app.php
$app->singleton(
Illuminate\Contracts\Debug\ExceptionHandler::class,
App\Exceptions\Handler::class // Change this line with the new namespace
);
我们正在重组应用程序的文件夹布局,使其更符合 DDD
域驱动程序设计理念。
例如
/app
/Users
/Jobs
/Authentication
/Http
/Console
/...
/bootstrap
/config
/...
尽管我们遇到的一个问题是重新定位 /Exceptions/Handler.php
class。我们的视图会将其重命名为 ExceptionHandler
并将其放置在 /app
目录的根目录中。
我们得到
PHP Fatal error: Uncaught ReflectionException: Class App\Exceptions\Handler does not exist ...
搬迁后出现错误。
我假设 Laravel 非常依赖该文件位于该确切位置,对吗?
您还必须更新它在服务容器中的绑定。 下面的示例来自 Laravel 5.2 但我猜它应该对所有 Laravel 5+.
都是一样的// bootstrap/app.php
$app->singleton(
Illuminate\Contracts\Debug\ExceptionHandler::class,
App\Exceptions\Handler::class // Change this line with the new namespace
);