Laravel 8 + PHP 8:使用可选路由可选参数给出“命名参数后不能使用位置参数”

问题描述

PHP 8 中使用 Laravel 8,并尝试在路由中设置可选参数:

Route::prefix('manual')->group(function () {
    Route::get('/{type}/{topic?}/{subtopic?}','PageController@manual')
        ->name('manual');
})

控制器(尝试了 false 和 null):

public function manual($type,$topic = false,$subtopic = false) {

给出以下错误

Symfony\Component\Debug\Exception\FatalThrowableError
Cannot use positional argument after named argument

当我将此路由 URL 称为 /manual/manualName 或 /manual/manualName/a/b 时 我该如何解决

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)