laravel 6使用"$controller->callAction"将数据发送到另一个控制器



我有两个控制器,我使用callAction将数据发送到第二个控制器。这是我的第一个控制器

$controller = App::make('AppHttpControllersEmailController');
$email = $controller->callAction('sendEmail', array('firstitem'=>'qweqw','seconditem' =>'asd'));

上面的代码im期望在第二个控制器中得到一个数组。在我的第二个控制器中,我有

public function sendEmail($request){
return ($request);
}

检查我是否会得到一个数组,但我只得到:qweqw,它只是数组的第一项。

在这种情况下,发送或接收阵列的正确方式是什么

下面的行应该可以工作。

app('AppHttpControllerEmailController')->sendEmail($params)

CCD_ 3是CCD_ 4的别名。代码的问题在于callAction方法。

当您使用app('...')时,您已经获得了AppHttpControllerEmailController的一个实例。

最重要的是,控制器是一个Class,因此,您可以通过直接调用它并根据需要传递参数来使用它所具有的任何公共方法,例如sendEmail。(->sendEmail($params)(。

相关内容

  • 没有找到相关文章

最新更新