EC-CUBE PHP

【EC-CUBE2】CSVをUTF-8でダウンロードさせる修正方法

投稿日:2017年2月19日 更新日:

デフォルトのEC-CUBE2だと、ダウンロードされるCSVはShift-JISになっています。
おそらく、EXCELでCSVを編集する事を考慮しているのでしょう。

でも、Shift-JISだと困るシーンもありますよね。
顧客によっては、Shift-JISじゃなくてUTF-8でCSVをダウンロードしたいというケースもあるでしょう。

今回は、EC-CUBE2のCSVをUTF-8でダウンロードする修正方法です。

スポンサーリンク

CSVをUTF-8でダウンロードさせる修正方法

修正ファイルはこちら。

SC_Helper_CSV.php

修正方法は簡単です。
下記の箇所を1行コメントアウトすればOK。

    /**
     * CSV 出力用のファイルポインタリソースを開く
     *
     * @return resource ファイルポインタリソース
     */
    public static function &fopen_for_output_csv($filename = 'php://output')
    {
        $fp = fopen($filename, 'w');

        // ※※※※※※※ ここをコメントアウト ※※※※※※※※※
        //stream_filter_append($fp, 'convert.iconv.utf-8/cp932');
        stream_filter_append($fp, 'convert.eccube_lf2crlf');

        return $fp;
    }

これでCSVがutf-8でダウンロードされるようになります!

まとめ

一瞬でございましたね。笑

これならプログラマーじゃなくても修正できるかな?

ではでは、最後までお読み頂きありがとうございました!

スポンサーリンク


-EC-CUBE, PHP

執筆者:

関連記事

【PHP】日時を計算する2つの方法

現在日を起点にして日時を取得して処理したいことってよくありますよね。 例えば、現在日時の1日前のデータのステータスを変更するとか。 今回は、PHPで日時を計算する2つ方法をご紹介します。 PHPの内部 …

【PHP】Shift-JISにエンコードしたCSVが文字化けするのはBOMが原因?

PHPでShift-JISに変換エンコードしたCSVをダウンロードする機能を実装したのですが、日本語の文字化けが発生。 この問題がちょっとややこしくて解決するのに時間がかかりました。 なんと文字化け …

【PHP】デフォルトの設定だと大量のPOSTパラメーターは途中で切れるので注意!!

PHPで大量のデータをPOSTすと、POSTしたデータが途中で切れるという問題が発生。 原因はなんて事はなく、php.iniの設定の問題でした。 対応方法を解説します。 スポンサーリンク 目次max_ …

【EC-CUBE3】管理画面のサイドメニューの変更

こんにちは! DENです! 未だに業務ではEC-CUBE3を使ったことはないんですが、勉強がてら触ってみました。 EC-CUBE2からはだいぶ変わりましたね! EC-CUBE2での開発は長いことやって …

【PHP】バックトーレス(呼び出し階層)をデバッグ出力する方法

PHPでバックトレースを出力する方法について解説します。 バックトレースというのは、呼び出し階層のようなものです。 エラーが発生した時に、何行目でエラーが発生してどのようなルートでメソッドが呼び出され …

プロフィール

このサイトを運営しているDENです。
アングラーのフリープログラマー。 主にプログラミングと釣の話を発信しています。
プログラミングで自由になり思う存分に釣りをしまくる生活実践中。
詳しいプロフィールはこちら 
フォスターフリーランス