为什么TP5路由加了动态参数就解析失败?

动态定义了一个get请求的路由,不加参数的情况下是可以的, 加了动态参数id就不行了

<?php

use think\Route;
Route::get('banner','api/v1.Banner/banner');

?>

上面是可以的,下面的就不行了

<?php

use think\Route;
Route::get('banner/:id','api/v1.Banner/banner');

?>

报错信息是:

clipboard.png

请问这种是什么情况?

阅读 2.4k
2 个回答

你可以把 banner/:id 中的 :id 看做占位符。你要做的就是用实际参数去替换。
eg:

  • banner/1

然后在控制器方法的参数中定义一个 $id 的参数去获取。而非通过 $request 去获取。

你的 URL 上面的是 localhost/banner/?id=1
直接用 localhost/banner/1 来请求,控制器接收参数的时候, 仍然用 id 来接收

推荐问题