gpt4 book ai didi

php - 将数据库表导出到 csv laravel

转载 作者:行者123 更新时间:2023-11-29 07:54:36 27 4
gpt4 key购买 nike

您好,我正在尝试将数据库表用户导出到 csv 文件,并且我在 Controller 中使用以下方法:

 public function getExport()
{
$table = User::all();
$output='';
foreach ($table as $row) {
$output.= implode(",",$row->toArray());
}
$headers = array(
'Content-Type' => 'text/csv',
'Content-Disposition' => 'attachment; filename="ExportFileName.csv"',
);

return Response::make(rtrim($output, "\n"), 200, $headers);
}

但是当我打开“ExportFileName.csv”时,我没有得到列标题,并且还得到了一些不在数据库中的其他垃圾?

在 Laravel 4 中最好、最简单的方法是什么

谢谢

最佳答案

您尚未将 header 添加到 CSV。在输出行之前,您应该执行以下操作:

foreach ($table[0] as $column => $value) {
$output .= "$column,";
}
rtrim($output, ",");
$output .= "\n";

(有更好的方法可以做到这一点)。

您还需要考虑值中的特殊字符:

  • 将每个值括在 "" 中以处理逗号,
  • 转义符和引号,以及
  • 删除或替换任何\n

关于php - 将数据库表导出到 csv laravel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25496471/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com