我遇到了Laravel 5的问题,确切地说,我找不到解决方法。在C#(ASP.NET MVC)中,这很容易解决。例如,我有以下路由(为简单起见,我只会输入路由内容和函数头部分):
/{category}/Page{page}
/Page{page}
/{category}
该函数定义在Product控制器内部。函数头如下:
public function list($page = 1, $category = null)
问题在于,每当我只输入一个参数时,它不会按照我在路由中设置的参数名称发送该参数的值,而是按照函数参数顺序推送值。 因此,当我打开 /Page1 时,它可以正常工作,将值 1 发送到 $page 变量, 但是当我访问 /Golf(即兴编造的),它也将值发送到 $page 变量。 有什么可能的方法可以避免这种情况,或者我是否真的需要创建不同的函数来处理这些情况?
在 C# 中,它会正确发送值,并保留未定义参数的默认值。
希望您能为我解答。 提前感谢您,祝您愉快 :)