2009-09-21 45 views

回答

1

修改的功能我从php.net commetns用于替换\ n和\ r转换到了一个
{或任何你传递}

function replaceNewLines($string,$replacement='<br />') 
{ 
    return preg_replace("/(\r\n)+|(\n|\r)+/", $replacement, $string); 
} 

$string = "this is \n\n\n a String with many \n\n\r\r returns!"; 

$string = replaceNewLines($string,''); 
2

为了使简单:是的

通常你只是想以取代<br />\n和做的伎俩。

+0

放置时,您仅使用替代HTML输出中来自textarea的帖子的结果。不过你是正确的浏览器维护客户端平台换行字符序列。 – AnthonyWJones 2009-09-21 14:16:19

2

在带有Opera,Firefox和IE7的Windows上,它以\ r \ n结束文本行。我认为在Unix中只会\ n,但现在没有一个系统来测试。

0

当您在输入textarea时按下Enter键时,它只会创建一个\ n。

如果您想要在页面上显示数据(用换行符格式化),则需要对textarea文本中的str_replace进行替换以替换\ n。

0

如果处理由PHP做的工作还有一个php函数称为nl2br这将做的伎俩。它需要两个参数,第一个是你的字符串,第二个是对于xhtml的bool true,对于html是false。从php.net

http://www.php.net/manual/en/function.nl2br.php

实施例:

<?php 
echo nl2br("foo isn't\n bar"); 
echo nl2br("Welcome\r\nThis is my HTML document", false); 
?> 

上例将输出(第一个是XHTML,第二滑动HTML):

foo isn't<br /> 
bar 

Welcome<br> 
This is my HTML document