を含むフォームがあり<textarea>、サーバー側でそのテキストエリアの改行をキャプチャして、<br/>.
それは可能ですか?
のCSSで設定white-space:preしてみましたtextareaが、まだ十分ではありません。
を含むフォームがあり<textarea>、サーバー側でそのテキストエリアの改行をキャプチャして、<br/>.
それは可能ですか?
のCSSで設定white-space:preしてみましたtextareaが、まだ十分ではありません。
機能をご覧くださいnl2br()。それはあなたが望むことを正確に行うべきです。
nl2br()まさにこれを行う関数が存在します:
ただし、この関数は br タグを追加しますが、実際には新しい行を削除しません。これは通常問題にはなりませんが、それらを完全に取り除き、キャリッジ リターンもキャッチしたい場合は、str_replaceまたはを使用する必要があります。preg_replace
str_replace の方が少し速いと思いますが、ベンチマークはしていません。
$val = str_replace( array("\n","\r","\r\n"), '<br />', $val );
また
$val = preg_replace( "#\n|\r|\r\n#", '<br />', $val );
str_replaceまたはを使用する場合preg_replaceは、おそらく"\r\n"を配列の先頭に配置する必要があります。そうしないと、シーケンスが 2 つのタグ\r\nに変換されます (が一致し、次にが一致するため)。<br/>\r\n
例えば:
$val = str_replace( array("\r\n", "\n","\r"), '<br />', $val );
また
$val = preg_replace( "#\r\n|\n|\r#", '<br />', $val );
に依存しない回答が必要な場合nl2br():
$newList = ereg_replace( "\n",'|', $_POST['theTextareaContents']);
または(この場合):
$newList = ereg_replace( "\n",'<br/>', $_POST['theTextareaContents']);
PHP 側: Textarea 文字列から PHP 文字列へ
$newList = ereg_replace( "\n",'|', $_POST['theTextareaContents']);
PHP 側: PHP 文字列を TextArea 文字列に戻す:
$list = str_replace('|', ' ', $r['db_field_name']);