Tag:CSV ( 1 Posts)
CSV出力時に使うfputcsv関数の改行コードはOS に依存するので、Linuxサーバーでfputcsvを使うと改行コードがLFになる。
出力したCSVファイルをローカル(Windows)で開く時、ExcelやAccessではLFでも改行してくれるけど、
Windows標準のnotepadでは改行されない。(WindowsではCR+LF)
メモ帳にnotepad使わないから、すっかり改行コードについて見落としてた・・・・。
(一応ヘッダーには改行コードr\n"で入れてたのに)
fputcsv関数の改行コードについて、どうしたものかと調べていたら、
「九州男児Webプログラマの備忘録」様に掲載されていた方法で上手くいきました。
出力したCSVファイルをローカル(Windows)で開く時、ExcelやAccessではLFでも改行してくれるけど、
Windows標準のnotepadでは改行されない。(WindowsではCR+LF)
メモ帳にnotepad使わないから、すっかり改行コードについて見落としてた・・・・。
(一応ヘッダーには改行コードr\n"で入れてたのに)
fputcsv関数の改行コードについて、どうしたものかと調べていたら、
「九州男児Webプログラマの備忘録」様に掲載されていた方法で上手くいきました。
$outputFile = 'data.csv';
$csv_data = array (
array('aaa', 'bbb', 'ccc', 'dddd'),
array('123', '456', '789') );
//fputcsvでCSVファイル書き込み
$fp = fopen($outputFile,'w');
foreach($csv_data as $line){
fputcsv($fp,$line);
}
rewind($fp);
$buf = str_replace("\n", "\r\n", stream_get_contents($fp));
fclose($fp);
$fp = fopen($outputFile, 'w');
fwrite($fp, $buf);
fclose($fp);
RECENT POSTS
SEARCH





