在laravel中调用其他控制器方法

时间:2013-11-18 23:51:38

标签: php rest controller laravel

我对laravel框架比较陌生,我注意到laravel控制器存在一个非常令人不安的问题。我不知道是不是它,但它似乎根本不起作用。假设我有一个控制器,我想分割当请求到达与控制器绑定的路由时调用的方法中包含的逻辑。

class SomeController extends BaseController
{
    function doSomething()
    {
        $this->doSomethingExtra();
    }

    function doSomethingExtra()
    {
        return "Something Extra Done";
    }
}

让我们说必须像这样定义路由

Route::get('main/dashboard','SomeController@doSomething');

从第一个方法调用的第二个方法永远不会将字符串“Something Extra Done”返回给浏览器。 infact它返回一个空的200响应。但是,当您像往常一样从doSomething()返回响应时,这似乎有效。任何人都知道为什么这样做?无论如何将控制器逻辑拆分为几个实际返回客户端响应的方法?

1 个答案:

答案 0 :(得分:5)

更改此

 $this->doSomethingExtra();

到此。

 return $this->doSomethingExtra();