【问题标题】:download a csv file dynamically create in PHP [duplicate]下载在PHP中动态创建的csv文件[重复]
【发布时间】:2014-06-22 12:23:25
【问题描述】:

如何强制浏览器下载我用 PHP 创建的 csv 文件?

我试过了

$result = array (
   array('aaa', 'bbb', 'ccc', 'dddd'),
   array('123', '456', '789'),
   array('aaa', 'bbb')
);

$filename = 'result_file.csv';

header("Content-Type: text/plain");
header('Content-Disposition: attachment; filename="'.$filename.'"');
header("Content-Length: " . strlen($result));
echo $result;
exit;

但是 csv 文件中充满了 PHP 错误

【问题讨论】:

  • 你绝不会创建 csv 文件 - 我不明白你为什么认为这样会起作用
  • 我应该,还是不应该... @Dagon 让 OP 弄清楚,或者回答...哦,该怎么办。大声笑毕竟,这是一个简单的修复。
  • @Fred-ii- 我的反应是惊恐万分 ;-)
  • 我为你塞了一个插头 @Dagon ;-)

标签: php csv download


【解决方案1】:

给你,达贡和我自己的赞美。

<?php

header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=result_file.csv");
header("Pragma: no-cache");
header("Expires: 0");

$data = array(
   array('aaa', 'bbb', 'ccc', 'dddd'),
   array('123', '456', '789'),
   array('aaa', 'bbb')
);

outputCSV($data);

function outputCSV($data) {
    $output = fopen("php://output", "w");
    foreach ($data as $row) {
        fputcsv($output, $row);
    }
    fclose($output);
}

【讨论】:

    猜你喜欢
    • 2014-06-21
    • 2012-07-22
    • 2020-12-29
    • 2015-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-12
    • 2012-06-09
    相关资源
    最近更新 更多