ここではPHPでのCSVファイル出力を解説しています。
サンプルソース
<?php $data[0]['name'] = "田中太郎"; $data[0]['position'] = "社長"; $data[1]['name'] = "野原ひろし"; $data[1]['position'] = "係長"; for ($i = 0; $i < count($data); $i++) { $csvFile .= $data[$i]['name'] . "," . $data[$i]['position'] . "\n"; } // ファイル名 $csvName = date("Y-m-d") . ".csv"; // ファイルサイズ $fileSize = filesize($csvFile); // 文字コードを設定 $csvFile = mb_convert_encoding($csvFile , "sjis-win", "utf-8"); // Mime設定 header("Content-Disposition: attachment; filename={$csvName}"); header("Content-Length:{$fileSize}"); header("Content-Type: application/octet-stream"); echo $csvFile; exit();
解説
出力するデータを「,」カンマ区切りで記述します。(9行目)
改行するときは「\n」を記述します。
この場合「’」シングルクォーテーションでは改行されません。必ず「”」ダブルクォーテーションで囲むようにしてください。
文字化けしないように文字コードを設定します。(18行目)
サンプルソースはUTF-8で作成してあります。
ファイル名、ファイルサイズ、を設定して出力しています。(21~24行目)
CSVファイルに限らずファイルの出力後には必ずexit()してください。