[php]csvファイル出力

php

phpでCSVファイルをダウンロードするには・・・

    // Csv出力
    private function exportCsv($data, $filename){

        $fileName = "ファイル名.csv";
        $tempFileName = '/tmp/'.$fileName;
        $fp = fopen($tempFileName, 'r+b');

        // ヘッダー
        fputcsv($fp, ['ヘッダー1', 'ヘッダー2']);

        // データを展開する(各行)
        foreach($data as $row){
            // 文字コード変換
            mb_convert_variables('SJIS', 'UTF-8', $row);
            fputcsv($fp, (array)$row);
        }

        // ファイルを閉じる
        fclose($res);

        header('Content-Type: ' . 'text/csv');
        header('Content-Disposition: attachment; filename="' . $fileName . '"');

        while (ob_get_level()) { ob_end_clean(); }

        readfile($tempFileName);

        exit;
    }

学習書籍のご紹介

コメント

タイトルとURLをコピーしました