小编典典

在 PHP 中为用户创建一个 CSV 文件

all

我在 MySQL 数据库中有数据。我正在向用户发送一个 URL,以将他们的数据作为 CSV 文件取出。

我已经涵盖了链接、MySQL 查询等的电子邮件。

当他们单击链接时,我怎样才能弹出一个窗口来下载带有 MySQL 记录的 CVS?

我已经掌握了获取记录的所有信息。我只是不知道如何让 PHP 创建 CSV 文件并让他们下载扩展名为 .csv 的文件。


阅读 61

收藏
2022-06-10

共1个答案

小编典典

尝试:

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

echo "record1,record2,record3\n";
die;

ETC

编辑:这是我用来选择性地编码 CSV 字段的代码片段:

function maybeEncodeCSVField($string) {
    if(strpos($string, ',') !== false || strpos($string, '"') !== false || strpos($string, "\n") !== false) {
        $string = '"' . str_replace('"', '""', $string) . '"';
    }
    return $string;
}
2022-06-10