0

我是 php 新手,我正在使用 Slim Framework 开发一个简单的 Rest Api。

根据文档,Slim 使用FastRoute

我有一条带有可选参数(供应商和数量)的路线,如下所示:

path/items/{id}/{name}/{price}[/{vendor}[/{quantity}]]

问题是,如果我将供应商留空,数量的值将转到供应商,而数量将不会被填写。我知道通过快速路线我无法做到这一点。但是,我该怎么做呢?

  1. 我可以使用快速路线吗?
  2. 我可以用 Slim 做吗?
  3. 是否有另一个框架可以实现我想要的?
  4. 我应该只使用查询字符串吗?(我认为这就是答案,但我需要有更多知识的人的帮助)。

谢谢你。

4

1 回答 1

1

如果您要使用可选参数,它们具有相同的类型并且可以按任何顺序发送,您可以使用查询字符串,或者使用固定格式添加类似 0 的内容而不是省略它。未设置“供应商”的示例:

/10/somename/15/0/12

然后参数在 URL/路由中不是可选的,但您可以在控制器中处理它,如果参数为零,则忽略它们。

于 2016-09-22T17:29:45.370 回答