所有
我正在尝试构建一个完整的UTF-8网络应用程序,允许用户提交文本内容。
如果我将复制在Web表单(textarea
)上的文本存储到PHP字符串$str
中,然后打印此变量,则显然会打印文本,而不会显示新行,回车符或标签。
打印文本时,我有办法查看这些特殊字符吗?
例如,如果用户输入:
Two roads diverged in a yellow wood,
And sorry I could not travel both
我希望能够打印:
Two roads diverged in a yellow wood,\nAnd sorry I could not travel both
答案 0 :(得分:3)
将它们回送到文本区域,或用<pre>
标签包围它们。否则,使用nl2br按下数据并使用自定义数据处理标签:
function tab2nbsp($str)
{
return str_replace("\t", ' ', $str);
}
答案 1 :(得分:1)
当你复制文本时,它应该保留回车和源代码中的新行以及存储信息的任何文件/数据库中的新行。如果你问如何在HTML页面上显示它以便它呈现换行,尝试php nl2br($string)
函数。
答案 2 :(得分:1)
使用PHP的nl2br
向您的换行符添加<br />
- 标记。 http://php.net/manual/de/function.nl2br.php
您还可以将内容放在<pre>
- 代码中,或使用CSS属性white-space:pre
http://www.css4you.de/Texteigenschaften/white-space.html
答案 3 :(得分:1)
使用<pre>
标记显示预格式化文本块(带有换行符,制表符或多个空格的文本)。此标记保留了这些元素。
您可能也对[{3}}函数感兴趣。
答案 4 :(得分:0)
使用这个,当在数据库中输入记录时,这会将br转换为nl,所以我将这个转换回html所以我们必须将它转换为br ....
nl2br($str);