久々に php でつまずいた事。
nl2br を使って改行コードを<br />に変換しようとしたところ、変換して戻ってきた値をテキストエリアで表示すると勝手に改行が入ってしまう現象が発生。
色々調べて nl2br は改行コードを<br />に置き換えるのではなく、改行コードの前に<br />を挿入する関数だと知った。
完全な勘違い。
これだと改行コードを消さないといけなくなるし、タグも html5 で記述してるので<br />より<br>の方がいい。
なので大人しく
str_replace(array("\r\n", "\r", "\n"), '
', $str);
で代用することに。
関数の仕様はちゃんと確認すべきですね。