PHPでの質問です。

textarea内に記述された文字をcsv形式のファイルに
追記する形にしているのですが
textarea内の文字に改行が複数入っている場合に
csvの中でも改行されてしまいます。
そこで改行を変換してくれるnl2brを使用したのですが
textarea内に



このように記載した場合にnl2brで処理しても
csv形式のファイルには
あ<br />
い<br />
う<br />
上記のように記録されてしまいます。
私はnl2brを入れると

あ<br />い<br />う<br />

このようになると思っていたのですが。
上記のようにするにはどのようにすればいいのでしょうか?

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/01/09 23:27:22
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:tobeoscontinue No.1

回答回数220ベストアンサー獲得回数59

ポイント60pt

http://jp2.php.net/nl2br

>改行文字の前にHTMLの改行指定文字を挿入する

ということで置換はしないんですねぇ

str_replace()を使って改行文字を削除するというのも手ですが

Notesにもあるように

function nl2brr($text)
{
 return str_replace(array("\r\n", "\n", "\r"), "<br>", $text);
}

のような置換する関数を作ってしまってはどうでしょう。

id:quocard

なるほど。

置き換えしないってことだったんですね。

納得です。

私も改行を後で削除という手を考えたのですが

そうするとどうもすっきりしない感じでしたので

紹介していただいたコードをお借りしようと思います。

ありがとうございました。

2007/01/08 22:22:53

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません