PHP rest API路由路径


PHP rest API Routing path

我的路由有问题。我的路由路径应该像这个/foo/{ID}/path。我的第一个想法是创建新的路由。但我不确定这个解决方案。还有其他想法吗?

假设foo是控制器,path是动作:

Route::set('route name here', 'foo/<id>/path') ->defaults( array( 'controller' => 'foo', 'action' => 'path', ) );

然后id可在path操作中通过:使用

$id = $this->request->param('id');

-编辑-

如果id必须满足某些要求(正好是8个字符长,在本例中只有a-z、a-z和0-9(,您也可以使用类似的东西:

Route::set('route name here', 'foo/<id>/path', array( 'controller' => 'foo', 'action' => 'path', 'id' => '[a-zA-Z0-9]{8}', ) ) ->defaults( array( 'controller' => 'foo', 'action' => 'path', ) );

-编辑2-

抱歉,刚刚注意到您正在寻求为其创建路线的替代解决方案,而不是如何为其创建路由。

不过我会把这个留在这里,因为它将来可能会帮助其他人。