以下PHP代码打印从HTML文本输入中获取的字符串。
<div class="form-group">
<label for="sender">Your text</label>
<input type="text" name="sender" id="sender" class="form-control" placeholder="example" />
</div>
<?php
print $_POST["sender"]." \r\nSecond senetence.";
?>
请注意连接字符串中的第二个\r\n
。
当我在HTML文本输入中输入:\r\nFirst sentence.
时,输出为:
\r\nFirst sentence. Second sentence.
为什么第一个\r\n
从字面上理解,我该如何解决?
我已经尝试'\r\n' "\r\n" \\r\\n
但似乎没有用。此外,因为我想要PHP字符串中的\r\n
,<br />, 
 and 

无法工作。
答案 0 :(得分:1)
<input type="*">
不接受换行。
改为使用<textarea rows="1"></textarea>
。
请注意,如果要显示换行符,则必须在<pre>
或其他<textarea>
中显示输出。其他可能性是使用PHP nl2br()
。
答案 1 :(得分:1)
如果您无法更改代码,则会更复杂,但仍有可能。
浏览器将对您在文本字段中输入的所有内容进行过滤/编码/清理,因此您必须在该步骤后执行某些操作。
我的建议是:
%0D%0A
;这是\r\n
有点麻烦,但可行。