在路由文件 fuelphp 中反转控制器参数顺序

Reversing controller argument order in routes file fuelphp

我是 运行 一个 fuelphp 应用程序,其路由如下所示:

'lastname/:lastname/firstname/:firstname'=> '(@api)/mycontroller/my_method//',

然后我在我的控制器上有一个这样的方法:

public function get_my_method($firstname, $lastname);

不幸的是,$firstname 变量包含从路由传入的 :lastname,而 $lastname 变量包含从路由传入的 :firstname路线.

我试过在路由文件中切换 </code> 和 <code>

我想保持端点 url 不变 - 我只是想反转进入控制器方法的参数顺序。

有人知道如何完成这个吗?

您需要将段括在方括号中以捕获它们,而不是使用命名参数。

'lastname/(:segment)/firstname/(:segment)' => '(@api)/mycontroller/my_method//'

替代方法是在您的控制器中使用 $this->param('firstname') 等,而不是将它们作为参数传递给操作函数。

http://fuelphp.com/dev-docs/general/routing.html#/advanced