我在HTML
中有一个文本区域,用户可以在其中输入文字,但是在提交表单时,它会传递给php
脚本echo
,那里有不是任何新行。知道HTML
这样做了,我在回复它之前尝试了preg_replace()
......
echo preg_replace("/\n/", "<br />", $_GET["text"]);
但是一切都在一条线上。
所以我最好的猜测是HTML
textareas使用了不同的换行符......任何人都可以对这个问题有所了解吗?
修改
好的,所以我发现了问题:Javascript正在剥离换行符。 view code here
编辑2
好的,谢谢Jason解决这个问题。我需要这样做:
escape(document.getElementById('text'));
而不仅仅是:
document.getElementById('text');
并保留换行符,问题解决了!
答案 0 :(得分:3)
echo nl2br($_GET['text'])
但是,preg_replace
为我工作了!
答案 1 :(得分:0)
通常在测试任何字符串中的换行符时,我使用/[\n\r]/
,只是为了覆盖我的基础。我的猜测是,这将与新线匹配。