PHP中替换换行符的几种方法小结


Posted in PHP onOctober 15, 2012

第一种:

<?php 
?$str="this is a test \n"; 
$patten = array("\r\n", "\n", "\r"); 
?//先替换掉\r\n,然后是否存在\n,最后替换\r 
$str=str_replace($order, "", $str); 
?>

//php 有三种方法来解决

//1、使用str_replace 来替换换行
$str = str_replace(array("\r\n", "\r", "\n"), "", $str);

//2、使用正则替换
$str = preg_replace('//s*/', '', $str);

//3、使用php定义好的变量 (建议使用)
$str = str_replace(PHP_EOL, '', $str);

/* 
* 获得用户操作系统的换行符,\n 
* @access public 
* @return string 
*/ 
function get_crlf() 
{ 
if (stristr($_SERVER['HTTP_USER_AGENT'], 'Win')) 
{ 
$the_crlf = '\r\n'; 
} 
elseif (stristr($_SERVER['HTTP_USER_AGENT'], 'Mac')) 
{ 
$the_crlf = '\r'; // for old MAC OS 
} 
else 
{ 
$the_crlf = '\n';//权重大一点 
} 
return $the_crlf; 
}

注意:在前台页面显示的时候,用nl2br使换行变成<br>

第二种实例说明:

发现一个有趣的事情:

$text="aaaa

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);

这样即可替换换行符!
PHP 相关文章推荐
php在线打包程序源码
Jul 27 PHP
php 自写函数代码 获取关键字 去超链接
Feb 08 PHP
PHP 一个页面执行时间类代码
Mar 05 PHP
php 文本文件的读取效率
Feb 10 PHP
PHP面向对象——访问修饰符介绍
Nov 08 PHP
PHP页面中文乱码分析
Oct 29 PHP
学习php设计模式 php实现模板方法模式
Dec 08 PHP
详解WordPress中给链接添加查询字符串的方法
Dec 18 PHP
visual studio code 调试php方法(图文详解)
Sep 15 PHP
ThinkPHP框架实现的邮箱激活功能示例
Jun 15 PHP
PHP isset()及empty()用法区别详解
Aug 29 PHP
PHP 99乘法表的几种实现代码
Oct 13 PHP
php变量范围介绍
Oct 15 #PHP
php模板函数 正则实现代码
Oct 15 #PHP
php mssql扩展SQL查询中文字段名解决方法
Oct 15 #PHP
PHP获取文件后缀名的三个函数
Oct 15 #PHP
php标签云的实现代码
Oct 10 #PHP
域名和cookie问题(域名后缀)
Oct 10 #PHP
记录PHP错误日志 display_errors与log_errors的区别
Oct 09 #PHP
You might like
apache+php完美解决301重定向的两种方法
2011/06/08 PHP
PHP简单的MVC框架实现方法
2015/12/01 PHP
php str_replace替换指定次数的方法详解
2017/05/05 PHP
如何在centos8自定义目录安装php7.3
2019/11/28 PHP
面向对象的编程思想在javascript中的运用上部
2009/11/20 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
node.js中的path.isAbsolute方法使用说明
2014/12/08 Javascript
在JavaScript中正确引用bind方法的应用
2015/05/11 Javascript
Jquery实现弹性滑块滑动选择数值插件
2015/08/08 Javascript
使用JQuery实现Ctrl+Enter提交表单的方法
2015/10/22 Javascript
javascript实现表单验证
2016/01/29 Javascript
浅谈js中子页面父页面方法 变量相互调用
2016/08/04 Javascript
8 行 Node.js 代码实现代理服务器
2016/12/05 Javascript
JS正则表达式验证账号、手机号、电话和邮箱是否合法
2017/03/08 Javascript
微信小程序 支付功能实现PHP实例详解
2017/05/12 Javascript
JavaScript对象拷贝与Object.assign用法实例分析
2018/06/20 Javascript
浅谈从React渲染流程分析Diff算法
2018/09/08 Javascript
jQuery 隐藏/显示效果函数用法实例分析
2020/05/20 jQuery
Python单元测试框架unittest使用方法讲解
2015/04/13 Python
使用Python编写简单的画图板程序的示例教程
2015/12/08 Python
Python如何快速上手? 快速掌握一门新语言的方法
2017/11/14 Python
Python实现深度遍历和广度遍历的方法
2019/01/22 Python
Python面向对象程序设计类的多态用法详解
2019/04/12 Python
django数据关系一对多、多对多模型、自关联的建立
2019/07/24 Python
Django CSRF跨站请求伪造防护过程解析
2019/07/31 Python
python统计指定目录内文件的代码行数
2019/09/19 Python
学python安装的软件总结
2019/10/12 Python
Django 实现外键去除自动添加的后缀‘_id’
2019/11/15 Python
Pycharm自带Git实现版本管理的方法步骤
2020/09/18 Python
CSS3的first-child选择器实战攻略
2016/04/28 HTML / CSS
Bowflex美国官方网站:高级家庭健身器材
2017/12/22 全球购物
共产党员岗位承诺书
2014/05/29 职场文书
十佳少先队员演讲稿
2014/09/12 职场文书
同学聚会感言一句话
2015/07/30 职场文书
2016高考寄语集锦
2015/12/04 职场文书
Python实现排序方法常见的四种
2021/07/15 Python