3 回答
TA贡献1812条经验 获得超5个赞
我在你的片段中做了一些关于 php://output
$headers = [
"Content-type" => "text/csv",
"Content-Disposition" => "attachment; filename=output_chat.csv", // <- name of file
"Pragma" => "no-cache",
"Cache-Control" => "must-revalidate, post-check=0, pre-check=0",
"Expires" => "0",
];
$columns = ['from_user', 'to_user', 'message', 'date_added'];
$callback = function () use ($result, $columns) {
$file = fopen('php://output', 'w'); //<-here. name of file is written in headers
fputcsv($file, $columns);
foreach ($result as $res) {
fputcsv($file, [$res->from_user, $res->to_user, $res->message, $res->date_added]);
}
fclose($file);
};
TA贡献1834条经验 获得超8个赞
你可以决定保存文件的位置——你可以使用 Laravel 的 Storage 外观来做到这一点。
private function pathToPrivateStorage()
{
return '/private/CSVs';
}
Storage::put($this->pathToPrivateStorage, $YOURCSVFILE);
您可以在此处阅读有关存储的更多信息。
TA贡献1852条经验 获得超7个赞
尝试$file = fopen('php://output', 'w');
代替$file = fopen('output_chat.csv', 'w');
- 3 回答
- 0 关注
- 254 浏览
添加回答
举报