当 Route::fallback 出现时检查路线是否存在
Check if route exists when Route::fallback present
我正在尝试确定给定路线是否存在于 Laravel 的 Route::fallback
内部。以下代码段 应该 抛出 NotFoundHttpException
异常,但我怀疑这不是由于回退的存在(即路由确实作为回退存在)。
Route::fallback(function () use ($routes) {
try {
$next = Request::create('does-not-exist');
Route::getRoutes()->match($next);
} catch (NotFoundHttpException) {
// Should end up here
}
});
对于某些上下文:我希望能够找到一条确实存在的路线,然后显示另一条路线的内容。第二条路线可能最终并不存在,我希望能够抓住它。
TIA
Route::getRoutes()->match($next);
的结果将是一个 Illuminate\Routing\Route
对象。您可以检查此对象的 isFallback
property.
的值
Route::fallback(function () use ($routes) {
$next = Request::create('does-not-exist');
$route = Route::getRoutes()->match($next);
if ($route->isFallback) {
// do your thing
}
});
我正在尝试确定给定路线是否存在于 Laravel 的 Route::fallback
内部。以下代码段 应该 抛出 NotFoundHttpException
异常,但我怀疑这不是由于回退的存在(即路由确实作为回退存在)。
Route::fallback(function () use ($routes) {
try {
$next = Request::create('does-not-exist');
Route::getRoutes()->match($next);
} catch (NotFoundHttpException) {
// Should end up here
}
});
对于某些上下文:我希望能够找到一条确实存在的路线,然后显示另一条路线的内容。第二条路线可能最终并不存在,我希望能够抓住它。
TIA
Route::getRoutes()->match($next);
的结果将是一个 Illuminate\Routing\Route
对象。您可以检查此对象的 isFallback
property.
Route::fallback(function () use ($routes) {
$next = Request::create('does-not-exist');
$route = Route::getRoutes()->match($next);
if ($route->isFallback) {
// do your thing
}
});