我正在尝试通过service的call选项执行的方法返回结果。所以 我的service.xml:
<service id="myService" class="serviceClass">
<argument type="service" id="..."/>
<argument type="service" id="..."/>
<call method="myReturnProblem"/>
</service>
我的服务方式:
function serviceMethod(){
...
$foo = "bar"
var_dump($foo);
return true;
}
我的控制器:
function sampleAction(){
...
$this->get('my_Service');
return Response...
}
所以,我可以看到var_dump该方法正在运行,我希望但我不知道如何才能获得返回true(如果我尝试获取$ foo或其他什么,同样的问题)。
现在,如果我做:
if($this->('my_Service))
它不起作用,因为它不包含结果。要得到它,我必须做类似
的事情if($this->('my_Service')->serviceMethod())
但它运行serviceMethod两次。
我想要做类似的事情:
if($this->get('my_Service')){}
有什么想法吗?感谢。