PHP経由でテキストを挿入するときに、textareaに新しい行をどのように作成しますか?
\n
しかし、それは文字通りtextareaに出力されます。
ありがとう
あなたのコードを見ないと確信が持てませんが、私の推測では、二重引用符( "\ n")の代わりに単一引用符( '\ n')を使用しています。
PHPは、文字列が二重引用符で囲まれている場合にのみエスケープシーケンスを評価します。 '\ n'を使用する場合、PHPはそれをリテラル文字列として扱います。 "\ n"を使用する場合、PHPは文字列を解析します変数とエスケープシーケンスを使用して、期待どおりに新しい行を出力します。
試す
$text = 'text line one' . PHP_EOL . 'text line two';
echo '<textarea>' . $text . '</textarea>';
Textareaの別々の行に各テキストを追加します。
PHP側:Textarea文字列からPHP文字列
$newList = ereg_replace( "\n",'|', $_POST['theTextareaContents']);
PHP側:PHP string TextAreaに戻る文字列:
$list = str_replace('|', ' ', $r['db_field_name']);
Alay Geleynseの発言は正しかった。私はあなたと同じ問題を抱えていたが、問題はエスケープ文字(\ r、\ n)が原因だった。変数を「エスケープ解除」するには、$var = stripcslashes($var)
を使用しましたが、正しく表示されます
\n
\r
<br />
^M
利用した \p
(テキストファイルの場合)。試す