是否可以将数组作为参数发送给函数?在网上搜索过,但对我没有太大帮助。这就是我所拥有的:
在我的树枝上,我有:
<a id="exporttocsv" href="{{ path('dashboard.index', {'data': tableresults|json_encode}) }}" class="btn btn-default">Export to CSV</a>
在我的控制器中:
public function exporttocsvAction(Application $app, Request $request, $data)
{
header("Content-Type: text/csv");
header("Content-Disposition: attachment; filename=test.csv");
header("Pragma: no-cache");
header("Expires: 0");
$output = fopen("php://output", "w");
foreach ($data as $row)
{
fputcsv($output, $row, ',');
}
fclose($output);
exit();
}
但是当我点击我的按钮时,我的链接会变成这样的东西,只是刷新:
是否可以发送数组?或者我应该使用ajax调用并发送数据吗?
答案 0 :(得分:3)
要在GET请求中传递数组,请检查此答案how to pass an array in GET in PHP?。
您也可以在POST请求中执行此操作,例如使用此处所述的表单Passing arrays from HTML form to PHP。
但在你的情况下,似乎最好的方法是使用ajax + json传递它然后在服务器端解码。请检查以下答案How to pass an array using PHP & Ajax to Javascript?:)