我有一个通过接受所需数据来生成CSV文件的类。我已经将该类声明为symfony服务,
<service id="admin.csv_response" class="AdminBundle\Controller\CsvResponse" public="true">
<argument key="$data">NULL</argument>
<argument key="$fileName">export.csv</argument>
</service>
我需要从控制器调用此服务,
$this->get('admin.csv_response');
如何通过在调用期间传递$ data和$ fileName的值作为参数来传递它们,以使其覆盖已给定的值?
我尝试了以下行,但不起作用。
$this->get('admin.csv_response', ['sample data', 'xxx.csv']);
提前谢谢!
答案 0 :(得分:1)
只需在您的服务中添加2个setter方法,而不是通过构造函数注入它们即可:
setData(string $data){...};
setFileName(string $fileName){...};
然后给他们打电话:
$this->get('admin.csv_response')->setData(...)->setFileName(...);