分享 PHP 替换换行符的几种方法

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

分享 PHP 替换换行符的几种方法

str_replace

str_replace("\r\n", "", $str);

preg_replace

$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

  • 不同系统之间换行的实现是不一样的
  • Linux 与 Unix 中用 /n MAC 用 /r
  • Window 为了体现与 linux 不同则是 /r/n
  • 所以在不同平台上实现方法就不一样

替换方式

使用 str_replace 来替换换行

$str = str_replace(array("/r/n", "/r", "/n"), "", $str);

使用正则替换

$str = preg_replace('//s*/', '', $str);

使用php定义好的变量 (建议使用)

$str = str_replace(PHP_EOL, '', $str);

PHP_EOL 变量

PHP_EOL 是一个些已经定义好的变量,代表 PHP 的换行符,这个变量会根据平台而变,在 Windows 下会是 /r/n,在 Linux 下是 /n,在 Mac 下是 /r,换行就按下面的就可以了。

$str = str_replace(PHP_EOL, '', $str);

以上是 分享 PHP 替换换行符的几种方法 的全部内容, 来源链接: utcz.com/p/231801.html

回到顶部