laravel routes:改变变量的顺序

时间:2017-03-24 09:31:29

标签: php laravel laravel-5.2

我正在尝试为控制器中的相同操作添加两个不同的路由,但我需要在中间提供空值。

路线:

Route::get('post/get-ajax-posts/start/{start}/profile/{profileid}', 'PostController@getAjaxPosts');    
Route::get('post/get-ajax-posts/start/{start}/tag/{tagName}', 'PostController@getAjaxPosts');

控制器:

public function getAjaxPosts(Request $request, $startRow, $profile = null, $tagName = null){}

我想在第二条路线中提供$ profile = null,但我得到$ profile = {tagName}

我该怎么做?

我唯一发现的是添加控制器:

      $routeParameters = $this->getRouter()->getCurrentRoute()->parameters();
      if(isset($routeParameters['tagName']) && $routeParameters['tagName']){
            $tagName = $routeParameters['tagName'];
            $profile = null;
        }

有没有更简单的方法?

1 个答案:

答案 0 :(得分:0)

非常简单的兄弟

公共函数内的

获取所有路径变量

public function getAjaxPosts(Request $request){
$startRow   =  $request['startRow'];
$profile    = null ; 
$tagName    = null ;
}