php中正则匹配换行以及自带的nl2br换行方法
2017-07-18| 程成| 1149| 0| PHP技术

正则写法


今天在将php字符串中换行符“\r”和“\r\n”替换成<br />时,写了个正则,如下:


$user = "Hello
World";
$user = preg_replace('(/\n|\r\n/', '<br />', $user);
echo $user;


这句代码会将$user中所有的“\r”和“\r\n”替换成“<br />”标签。


nl2br()写法


后来发现php自带了一个将“\r”和“\r\n”转换成“<br />”标签的方法,名字叫做nl2br(),用法如下:


$user = "Hello
World";
$user = nl2br($user);
echo $user;


上面两种写法都会得到下面结果:


Hello <br /> World



nl2p()方法


nl2br()有个缺点,比如要用CSS做到段落缩进就比较麻烦,这个时候就需要nl2p()了。将br换行换成段落p换行,比较简单是直接替换:



<?php
function nl2p($text) {
    return "<p>" . str_replace("\n", "</p><p>", $text) . "</p>";
}
?>


以上就是php中正则匹配换行以及自带的nl2br()换行方法,和拓展的nl2p()方法。



×
作者:程成
QQ:492245711