PHP-如何打印'; ''; '';r ';,以及通过表单提交的


PHP - How to print ' ', ' ', ' ', and tabs in a text submitted by form?

全部,

我正在尝试构建一个完全UTF-8的web应用程序,允许用户提交文本内容。

如果我将复制到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

将它们回显到文本区域中,或者用<pre>标记包围它们。否则,请使用nl2br和一个用于处理选项卡的自定义数据:来处理数据

function tab2nbsp($str)
{
    return str_replace("'t", '&nbsp;&nbsp;&nbsp;&nbsp;', $str); 
}

当您复制文本时,它应该在源代码和存储信息的任何文件/数据库中保留回车和新行。如果您想知道如何在HTML页面上显示它,以便用换行符进行渲染,请尝试php nl2br($string)函数。

使用PHP的nl2br<br />标记添加到换行符中。http://php.net/manual/de/function.nl2br.php

您也可以将内容放在<pre>-标记中,或者使用CSS属性white-space:prehttp://www.css4you.de/Texteigenschaften/white-space.html

使用<pre>标记显示预先格式化的文本块(带有换行符、制表符或多个空格的文本)。此标记保留这些元素。

函数nl2br()也可能对您感兴趣。

使用这个,当记录输入数据库时,它会将br转换为nl,所以我们将其返回到html,所以我们必须将其nl转换为br…

nl2br($str);