1

私はニュース発行のウェブサイトを作成していますが、このサイトでできないことは、改行を入力して表示することだけです。

サイトには記事を書くためのテキストエリアがあります。入力中にEnterキーを押すと、新しい行に移動しますが、すべてを送信した後、mysqlにクエリを実行して、入力した内容をプルしてエコーします。新しい行は表示されません。すべてのテキストは隣り合っています。それで、PHPの助けを借りてtextareaに改行を入力および出力できるかどうか疑問に思いましたか?

4

1 に答える 1

2

フォームを送信すると、テキストが送信されます。

そのテキストをHTMLドキュメントに入れると、それはHTMLになります。

HTMLでは、改行はスペースやタブと同じ意味を持つ単なる空白です。

新しい行を表示したい場合は、それらをレンダリングするマークアップでラップする必要があります(要素、またはレンダリングするよう<pre>にプロパティが設定された要素などwhite-space)、または適切なものに置き換える必要がありますマークアップ。

非常に原始的な置き換えは、PHPのnl2br関数です。より高度なオプションは、<p>要素を生成し、異なる数の連続する新しい行を異なる方法で処理します(たとえば、Stackoverflowで使用されるようなMarkdownパーサー)。

于 2012-09-30T15:23:23.910 に答える