php6 配置,thinkphp6路由可选参数配置

thinkphp6 路由可选参数配置后#0 [0]InvalidArgumentException in Container.php line 455

方法参数错误:id

路由配置参考手册如下

可选变量

支持对路由参数的可选定义,例如:Route::get('blog/:year/[:month]','Blog/archive');

// 或者

Route::get('blog//','Blog/archive');

变量用[ ]包含起来后就表示该变量是路由匹配的可选变量。

以上定义路由规则后,下面的URL访问地址都可以被正确的路由匹配:http://serverName/index.php/blog/2015

http://serverName/index.php/blog/2015/12

采用可选变量定义后,之前需要定义两个或者多个路由规则才能处理的情况可以合并为一个路由规则。

可选参数只能放到路由规则的最后,如果在中间使用了可选参数的话,后面的变量都会变成可选参数。

问题

小编查看手册,发现代码并没有出错

看看实现代码:public function editMd($id)

{}

我们可以看到,这里的定义貌似没有问题,但实际上缺少默认参数。

这就好比 C/C++ 等语言中使用变量却没有定义。

改成下面这样就OK啦!public function editMd($id = -1)

{}

说到底也就是给个默认值。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值