使用php输出一些含有回车或换行符的文字到浏览器时,所输出的文字的排版格式都被打乱了,显得非常的难看。而php中提供了一个内置的函数 nl2br() ,可以很好的解决这个问题。

php nl2br() 函数定义

nl2br():字符串中的每个新行(\n)之前插入 HTML 换行符

语法:

nl2br(string,xhtml)

参数:

string:必需,要处理的字符串

xhtml:可选,布尔值,表示是否兼容 xhtml。True:插入<br/> ,FALSE:插入 <br>

php nl2br() 使用方法

1、php在新行(\n)之前插入换行符

php代码:

<?php
$str = "hell\nword!";
echo nl2br($str,false);
?>

浏览器输出结果(注意,已经换行):

hell
word!

查看网页源代码结果:

这里的换行是由 \n 换行符的作用

hell<br>
word!

注意:

1、nl2br() 添加的<br>标签效果在浏览器的输出结果中就能看到

2、\n 换行符的效果,只能查看网页源代码看到

2、读取一个外部的带有换行的TXT文件,保留换行输出到浏览器

php代码:

<?php
$str = file_get_contents('txt.txt');
//没有处理,直接输出内容
echo $str;
echo '<br/><br/>';
//下面是处理过的输出
echo nl2br($str);
?>

运行结果:

php nl2br() 函数详解

你可以通出在浏览器的输出结果,比较一下未经过 nl2br() 函数,和经过 nl2br() 函数处理过的字符串在样式的排版上有什么不同之处。

3、php输出一个带有换行的字符串,并保持原样输出

如果在php文件中的字符串,带有换行的样式,也可以保持原样输出到浏览器中。

php代码:

<?php
$str = '君不见,黄河之水天上来,奔流到海不复回。
        君不见,高堂明镜悲白发,朝如青丝暮成雪。';
//没有处理,直接输出内容
echo $str;
echo '<br/><br/>';
//下面是处理过的输出
echo nl2br($str);
?>

输出结果:

php nl2br() 函数详解