doulai8405 2016-03-14 12:36
浏览 36
已采纳

在PHP和CodeIgniter中使用nl2br不打印新行

I am trying to solve a new line issue in CodeIgniter. My variable is set as below

$ba='hi
hello';

When I try to print it like this

echo nl2br($ba);

It's not converting to a new line. After a whole day of searching I found out that this is because my variable is with ' not "

I've also tried to use preg_replace but it's the same

preg_replace("/
||
/",'<br/>',$ba);

But I can't change this so how do I fix this issue?

Thanks for helping out.

  • 写回答

1条回答 默认 最新

  • douguwo2275 2016-03-14 12:47
    关注

    " " is not the same as ' '! This is your basic problem. You are not trying to replace what you think you are

    " " is converted in to a line feed or ASCII 13

    ' ' is the character \ then the character n

    $ba='hi
    hello';
    $ba=str_replace('
    ','<br>',$ba);
    
    echo $ba; // hi<br>hello
    

    to use a regular expression:

    as \ is an escape character you need to triple it:

    $ba=preg_replace('#\\\\ |\\|\\ #','<br/>',$ba);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部