从textarea输入中捕获换行符

时间:2011-04-30 20:36:07

标签: php html

我的html中有一个textarea表单。如果用户点击两个句子之间输入数据应该转移到我的PHP。

目前,如果用户输入:

Apple
Google
MS

我的PHP代码是:

$str = $_POST["field"];

echo $str;

我得到了

Apple Google MS 

作为输出。我希望输出像这样

Apple
Google
MS

我该怎么办?

3 个答案:

答案 0 :(得分:40)

请尝试nl2br()

echo nl2br($str);

答案 1 :(得分:3)

新行应包含在您从$_POST["field"]获得的字符串中。但是,如果您在HTML中使用该字符串作为输出,则新行将被视为空格。要强制换行,请使用preg_replace("/\n/", "<br />", $str)

答案 2 :(得分:0)

这是因为当你回显它时它会显示为HTML。 \n字符被解释为空格。如果您查看来源,您将看到所需的输出。

要将\n转换为<br>,请使用:

echo nl2br( $str );