アプリ版:「スタンプのみでお礼する」機能のリリースについて

[PHP]csvファイルを生成するときのマックの改行対応の方法について

現在、phpでcsvファイルを出力しているのですが、Windowsだと旨く改行が反映されるのですが、Macだと旨く行きません。。。

改行は「\n」を使っていましたが、マックの改行コードが「\r」との事なので、「\n\r」としたのですが、旨く反映されないようです。。。

途中は省きますが

$csvData .= "A列" . "," . "B列" . "\n\r";
$csvData .= "a" . "," . "b" . "\n\r";
$csvData .= "c" . "," . "d" . "\n\r";

として、マックでオープンオフィスを使用して開くと、
A列,B列a,bc,d

と1行で出て来てしまします。

よろしくお願いします。

A 回答 (2件)

PHP_EOL定数を使ってみるのはどうでしょうか~


OSを考えなくて済むので便利です。
ただし、PHP 4.3.10 および PHP 5.0.2 以降で利用可能

こんな感じで
$csvData .= "A列" . "," . "B列" .PHP_EOL;
$csvData .= "a" . "," . "b" . PHP_EOL;
$csvData .= "c" . "," . "d" . PHP_EOL;

参考URL:http://jp2.php.net/reserved.constants
    • good
    • 0

■改行コード


WindowsがCR+LFの「\r\n」
MacがCRの「\r」


Macの場合だと「\r」で上手くいくと思いますよ。
「\r\n」も試してみてください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!