以正确的格式将生成的 CSV 保存到服务器作为下载

Posted

技术标签:

【中文标题】以正确的格式将生成的 CSV 保存到服务器作为下载【英文标题】:Saving Generated CSV to Server in Proper format as download 【发布时间】:2013-06-20 08:14:33 【问题描述】:

我已经成功地将我的数据库导出为 csv 作为可下载文件。但是,我现在需要做的不是创建一个直接下载的 .csv 文件,而是将其保存到服务器上名为“csv”的文件夹中。这是我当前导出的代码。我需要帮助将其保存到服务器。我没有正确保存数据。

    // output headers so that the file is downloaded rather than displayed
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=data.csv');

// create a file pointer connected to the output stream
$output = fopen('php://output', 'w');

// output the column headings
fputcsv($output, array('tax_class_id','_product_websites'));

// fetch the data
mysql_connect('localhost:3036', 'x', 'x');
mysql_select_db('lato');
$rows = mysql_query('SELECT taxclass,productwebsite FROM product');

// loop over the rows, outputting them
while ($row = mysql_fetch_assoc($rows)) 
fputcsv($output, $row);

$filename = "data.csv"; // Trying to save file in server
file_put_contents("download/" . $filename, "$header\n$rows");

【问题讨论】:

来自此的重复问题:***.com/questions/17166207/… 【参考方案1】:

您需要将最后一行更改为

$filename = "data.csv"; // Trying to save file in server
file_put_contents("download/" . $filename, $output);

【讨论】:

以上是关于以正确的格式将生成的 CSV 保存到服务器作为下载的主要内容,如果未能解决你的问题,请参考以下文章

数据库到 CSV(完成)尝试将文件保存到服务器上的文件夹

将 RedShift 文件以 CSV 格式移至 S3

使用PHP阅读电子邮件附件(csv)

Web scraper / CSV未以正确的格式保存

将谷歌存储桶中的所有 .csv 文件读取到一个大熊猫 df 中,然后以 .csv 格式保存到另一个桶中

将客户端 Json 下载为 CSV