请教,Route::fallback中不使用 redirect 如何重新指向某个控制器的方法?

banro512

请教个问题,代码如下

Route::fallback(function($request){
    $path=$request->path();
    // $path='/ceshi/ff';
    // 想将这个url重新使用控制器 Article->ff 方法渲染,需要url保持不变,因此不可使用 redirect
    // 直接这样增加路由无效
    // Route::any($path, [app\controller\Article::class, 'ff']);
});

比如 我在 Route::fallback 中使用 $request->path 捕获了一个 path= /ceshi/ff , app下有个控制器 Article

我想将捕获的这个path重新交给 Article的 ff 方法,不想使用redirect,应该怎么做呢?

823 1 0
1个回答

静默

试下

Route::fallback(function($request){
    (new app\controller\Article::class)->ff($request);
});
  • banro512 2022-06-06
    return (new \app\controller\Article)->ceshi($request);

    改成这样是可以的,但这样是不是每次访问都实例化控制器?是否存在内存泄漏?

  • 静默 2022-06-06

    不会内存泄漏啊,哪那么容易内存泄漏。

年代过于久远,无法发表回答
🔝