我有一个javascript数组,我必须在客户端环境中保存为CSV ..这有可能使用jquery吗?我必须在所有主流浏览器中工作..我正在使用symfony2框架。如果我可以将此数组传递给服务器,可以这样做。请解释传递数组的最佳方法,因为我是有一大堆关联数组..
答案 0 :(得分:2)
您可以根据需要将数据发送到服务器(使用$_POST
,AJAX
等)。但是,一旦数据到达服务器,这就是 I 将数据发送到CSV文件的方式。
$serialized_data = $_POST['some_data_array'];
if($downloadFile) // simple condition
{
$fp = fopen('php://memory', 'w+'); // open up write to memory
foreach($serialized_data as $row) // $serialized_data represents what you sent to the server from JS
{
fputcsv($fp, $row);
}
rewind($fp);
$csvFile = stream_get_contents($fp);
fclose($fp);
header('Content-Type: text/csv');
header('Content-Length: '.strlen($csvFile));
header('Content-Disposition: attachment; filename="yourFile.csv"');
exit($csvFile);
}