我是php的新手,我正在使用Slim Framework开发一个简单的Rest Api。
根据文档,Slim使用FastRoute。
我有一条带有可选参数(供应商和数量)的路线:
path/items/{id}/{name}/{price}[/{vendor}[/{quantity}]]
问题在于,如果我将供应商留空,则数量的值会转到供应商,而数量将不会被填充。我明白,通过快速路线,我无法做到这一点。但是,我该怎么办呢?
谢谢。
答案 0 :(得分:1)
如果您要使用可选参数,这些参数类型相同且可以按任何顺序发送,您可以使用查询字符串,也可以使用固定格式添加0之类的内容而不是省略它。未设置“vendor”的示例:
/10/somename/15/0/12
然后参数在URL /路由中不是可选的,但您可以在控制器中处理它,如果参数为零则忽略它们。