- ベストアンサー
fputで出力した文字列を改行するには?
PHP初心者です。 いくつかの文字列変数をテキストファイルに書き出す処理を行いたいのですが、うまく動作してくれません。 文字列変数 $str_a, $str_b, $str_cをカンマで区切ってテキスト1行でファイルに書き出しています。 $str = $str_a . ',' . $str_b . ',' . $str_c . '\\r\\n'; fputs($fp, $str); 上の2行がループで数回呼ばれた後、ファイルをクローズしているのですが、実際に作成されたテキストファイルを見ると a1,b1,c1\r\na2,b2,c2\r\n....みたいに改行が入らず"\r\n"という文字列があるだけです。希望しているのは a1,b1,c1 <-ここで改行 a2,b2,c2 <-ここも改行 という結果なのですが.... よろしくご教授お願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#24096
回答No.1
「\r」「\n」は特殊文字なので二重引用符(")で括る必要があります。 引用符(')で括った場合は、単なる文字列と見なされます。 詳しくはマニュアルをどうぞ。
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.2
$str = "$str_a,$str_b,$str_c\n"; でいいんじゃないでしょうか
質問者
お礼
うまく行きました。 ありがとうございます。
お礼
引用符と2重引用符で動作が異なるというのは聞いていましたが、引用符ないでは特殊文字も単なる文字列になるとは知りませんでした。 ありがとうございます。