mirror of
https://github.com/skipperbent/simple-php-router.git
synced 2026-07-12 04:32:11 +00:00
- Optimized handleException method in RouterBase.
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
namespace Pecee\SimpleRouter;
|
namespace Pecee\SimpleRouter;
|
||||||
|
|
||||||
use Pecee\Exception\RouterException;
|
use Pecee\Exception\RouterException;
|
||||||
|
use Pecee\Handler\IExceptionHandler;
|
||||||
use Pecee\Http\Middleware\BaseCsrfVerifier;
|
use Pecee\Http\Middleware\BaseCsrfVerifier;
|
||||||
use Pecee\Http\Request;
|
use Pecee\Http\Request;
|
||||||
|
|
||||||
@@ -181,7 +182,12 @@ class RouterBase {
|
|||||||
foreach ($this->exceptionHandlers as $route) {
|
foreach ($this->exceptionHandlers as $route) {
|
||||||
$route->loadMiddleware($this->request);
|
$route->loadMiddleware($this->request);
|
||||||
$handler = $route->getExceptionHandler();
|
$handler = $route->getExceptionHandler();
|
||||||
$handler = new $handler($this->request);
|
$handler = new $handler();
|
||||||
|
|
||||||
|
if (!($handler instanceof IExceptionHandler)) {
|
||||||
|
throw new RouterException('Exception handler must implement the IExceptionHandler interface.');
|
||||||
|
}
|
||||||
|
|
||||||
$handler->handleError($this->request, $this->request->loadedRoute, $e);
|
$handler->handleError($this->request, $this->request->loadedRoute, $e);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user