PHPでフォームを作るときに便利なテンプレート(フォーム入力内容をcsv出力)
2016/04/28
ダウンロードする際はutf-8だけど
csvファイルで開こうと思ったらエクセルの文字コードにあわせなきゃ
(エクセルの文字コードはShiftJIS)
ってことでフリーで配布されているPHPのフォームを使わせてもらってるが
csv出力がほしいってなったときのためにめも。
PHPファイルのconfigファイルあたり?
→実際に動作をしているファイル
1 2 3 4 5 6 |
if( !(empty($_POST['name_1'])) ){ $name_1 = mb_convert_kana($_POST['name_1'], 'KVa'); } |
↑みたいなのが書かれているファイルの一番下あたりに
↓以下のコードをはっつけ!
1 2 3 4 5 6 7 8 |
$ShiftJIS = $_POST; //文字コードを変えるための2行 これでダウンロードするときにcsvファイルがUTF-8からShiftJISになる mb_convert_variables('Shift_JIS', 'UTF-8', $ShiftJIS); $csv = fopen('file.csv', 'a'); //出力するcsvファイルの名前(これの場合「file」)と書き込みのモードを指定する(a だと末尾に追加していってくれる) fputcsv($csv, $ShiftJIS); //うえで変換した配列をcsvファイルに書き込み実行していく! fclose($csv); //書き込んでいったcsvファイルを閉じます! |
この5行追加しただけであっさりcsvファイルでてきた。