文書の過去の版を表示しています。
Laravel で CSV ダウンロード機能を実装する一例。
文字コードを SJIS-win で出力場合の例。
class CsvController extends Controller { public function download(Survey $survey) { $csv_headers = ['No.', 'Name', 'Date']; $csv_body = []; // DB からデータを読み込むなどし csv_body に格納 return response()->streamDownload( function () use ($survey, $csv_headers, $csv_body) { $stream = fopen('php://output', 'w'); mb_convert_variables('SJIS-win', 'UTF-8', $csv_headers); fputcsv($stream, $csv_headers); foreach ($csv_body as $line) { mb_convert_variables('SJIS-win', 'UTF-8', $line); fputcsv($stream, $line); } fclose($stream); }, 'file_name.csv', ['Content-Type' => 'application/octet-stream'] ); } }
コメント