php去除换行符的方法小结(PHP_EOL变量的使用)

yipeiwu_com6年前PHP代码库

一个小小的换行,其实在不同的平台有着不同的实现,为什么要这样,可以是世界是多样的。本来在unix世界换行就用/n来代替,但是windows为了体现他的不同,就用/r/n,更有意思的是在mac中用/r。因此unix系列用 /n,windows系列用 /r/n,mac用 /r,这样就用你写的程序在不同的平台上运行有着不少的麻烦。下面是PHP去除换行符的一些常见方法。

第一种写法:

复制代码 代码如下:
$content=str_replace("\n","",$content);
echo $content;


第二种写法:

复制代码 代码如下:
str_replace("\r\n","",$str);

第三种写法:

复制代码 代码如下:

$content=preg_replace("/\s/","",$content);  
echo $content;

关于\n,\r,\t
\n 软回车: 在Windows 中表示换行且回到下一行的最开始位置 ,在Linux、unix 中只表示换行,但不会回到下一行的开始位置。
\r 软空格: 在Linux、unix 中表示返回到当行的最开始位置。 在Mac OS 中表示换行且返回到下一行的最开始位置,相当于Windows 里的 \n 的效果。
\t 跳格(移至下一列)

几点说明:

它们在双引号或定界符表示的字符串中有效,在单引号表示的字符串中无效。 
\r\n 一般一起用,用来表示键盘上的回车键(Linux,Unix中),也可只用 \n(Windwos中),在Mac OS中用\r表示回车。
\t表示键盘上的“TAB”键。 
文件中的换行符号:windows : \n,linux,unix: \r\n 

补充代码:

复制代码 代码如下:

<?php
//php 不同系统的换行
//不同系统之间换行的实现是不一样的
//linux 与unix中用 /n
//MAC 用 /r
//window 为了体现与linux不同 则是 /r/n
//所以在不同平台上 实现方法就不一样
//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);
?>


PHP_EOL是一个些已经定义好的变量,代表php的换行符,这个变量会根据平台而变,在windows下会是/r/n,在linux下是/n,在mac下是/r.换行就按下面的就可以了。
复制代码 代码如下:
$str = str_replace(PHP_EOL, '', $str);

相关文章

PHP图片处理之使用imagecopy函数添加图片水印实例

为图片添加水印也是图片处理中常见的功能。因为只要在页面中见到的图片都可以很轻松地拿到,你辛辛苦苦编辑的图片不想被别人不费吹灰之力拿走就用,所以为图片添加水印以确定版权,防止图片被盗用。制...

解决php写入数据库乱码的问题

对于乱码这个问题php开发者几乎都会有碰到过,我们下面主要是介绍了php mysql数据库连接时乱码解决方法。 MYSQL数据库使用UTF-8编码的问题 1.用phpmyadmin创建...

php面向对象中static静态属性和静态方法的调用

本文实例讲述了php中static静态属性和静态方法的调用。分享给大家供大家参考。具体如下: 这里分析了php面向对象中static静态属性和静态方法的调用。关于它们的调用(能不能调用,...

浅谈ThinkPHP中initialize和construct的区别

ThinkPHP中initialize()和construct()这两个函数都可以理解为构造函数,前面一个是tp框架独有的,后面的是php构造函数,那么这两个有什么不同呢? 在网上搜索,...

PHP二维数组实现去除重复项的方法【保留各个键值】

本文实例讲述了PHP二维数组实现去除重复项的方法。分享给大家供大家参考,具体如下: 对于如下二维数组,要求对其进行去重: $arr = array( '0'=>arr...