当前位置:首页 > 常用代码 > 正文

PHP中替换换行符的方法

作者:在路上 来源:hi.baidu.com 【 】 浏览: 修改日期:2011-05-30 我要评论(6)     

发现一个有趣的事情:

$text="aaaa

bbb

ccc";

$text=str_replace(’\n‘,"",$text);
$text=str_replace(’\r‘,"",$text);
$text=str_replace(’\r\n‘,"",$text);

正常来说,上面的代码应该可以替换换行符了吧

但是事实上却是不可以!

很郁闷,试了很多次,就是不起作用。

最后改成这样

$text=str_replace("\n","",$text);
$text=str_replace("\r","",$text);
$text=str_replace("\r\n","",$text);

居然一切OK了~~,原来是双引号,单引号的问题!!

双引号 比单引号效率差点,因为双引号在被php解析的过程中 ,还会判断里面会不会有变量,单引号就不会有这个判断,故而一般来讲,没涉及到变量的情况下,我都会用单引号,没想到这次替换换行符,用单引号居然不行·····

最后写成一句话

$order   = array("\r\n", "\n", "\r");
$replace = '';
$text=str_replace($order, $replace, $text);

这样即可替换换行符!

(如果您觉得本站不错,请告诉身边的朋友,或转载到论坛、百度知道、贴吧等,记得带网址哟,不胜感激!)

〖常用代码〗Tags: php php替换 php正则替换 str_replace

更多评论(6)..会员评论

Lgq(61.133.*.*) 发表于:2011-08-17 11:13:01
单引号里面含有转义字符的原因吧
yyjsynfq(124.127.*.*) 发表于:2011-07-15 17:06:31
我是为了顶这个文章,才专门注册的,为了感谢这篇文章!
usersys(117.84.*.*) 发表于:2011-06-03 17:59:15
$text=str_replace("\n","",$text); $text=str_replace("\r","",$text); 其实这已经替换啦,下面一句没必要写啦!
小子欠扁(121.227.*.*) 发表于:2011-06-02 09:49:03
单引号里面只会当成正常的字符,不会解析成换行符。这跟变量差不多。
gomonday(120.42.*.*) 发表于:2011-03-21 23:26:44
恩,这个,在php里,这些换行符都是只能在源代码里显示啊,在浏览器并不显示出效果,请问除了<br/>这样的写法,php里换行的写法还有什么吗,要在浏览器里能显示出效果的?
管理员回复:那就br呀
twlhack(123.65.*.*) 发表于:2010-07-01 17:06:10
不错,这个可是经验之谈啊,
管理员回复:

出差旅游免费预订酒店

【视频教程】新手常见问题