从数据库表中获取 CSV 文件下载的正确方法是什么。 我希望单击按钮即可实现此操作。
我是否应该首先使用 PHP 中的标准方法来实现
.csv
,然后在某些路由处理程序中使用 \Web::instance()->send()
?
Web->send
需要一个真实的文件作为输入,所以你必须采用标准的 PHP 方式:
function dumpCSV($rows,$filename,$sep=',',$eol="\r\n") {
header('Content-type: application/csv; charset=UTF-8');
header('Content-Disposition: attachment; filename='.$filename);
foreach($rows as $row)
echo implode($sep,array_map(function($cell){
return '"'.$cell.'"';
},$row)).$eol;
}
另请查看 ikkez 的
Sheet
类,它可以帮助您以 Excel 和 CSV 格式呈现表格数据。