zoukankan      html  css  js  c++  java
  • php如何实现把多平台文件中所有的行合成一行?

    php如何实现把多平台文件中所有的行合成一行?

    一、总结

    1、str_replace中的数组替换:str_replace(array("/r","/n","/r/n"),"",$string);

    2、preg_replace正则表达式替换:$str = preg_replace('//s*/', '', $str);

    3、用PHP_EOL替换:$str = str_replace(PHP_EOL, '', $str);

    二、php换行符表示的几种方式

    一个小小的换行,其实在不同的平台有着不同的实现,为什么要这样,可以是世界是多样的。

    本来在unix世界换行就用/n来代替,但是windows为了体现他的不同,就用/r/n,更有意思的是在mac中用/r

    因此unix系列用 /n

    windows系列用 /r/n

    mac用 /r

    这样就用你写的程序在不同的平台上运行有着不少的麻烦

    比如有的程序要把文件中的所有行都合成一行,这有不同的实现方式,

    第一种方式:str_replace中的数组替换

    str_replace(array("/r","/n","/r/n"),"",$string);

    第二种方式:preg_replace正则表达式替换

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

    第三种方式:用PHP_EOL替换

    这里不得不重新看一下php那些已经定义好的变量

    PHP_EOL就是其中的一个,代表php的换行符,这个变量会根据平台而变,在windows下会是/r/n,在linux下是/n,在mac下是/r

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

    三、测试题-简答题

    1、php下的换行符预定义变量怎么写?

    解答:PHP_EOL

    2、unix系列的换行符是什么?

    解答:/n 和c语言一样

    3、windows系列的换行符是什么?

    解答:/r/n 连在一起的,而不是两个

    4、mac系列的换行符是什么?

    解答: /r

    5、PHP_EOL有什么用?

    解答:PHP_EOL是php那些已经定义好的变量,它的值会根据平台而变,变成不同平台下的换行符,在windows下会是/r/n,在linux下是/n,在mac下是/r

  • 相关阅读:
    POJ2888 Magic Bracelet [矩阵快速幂+Burnside+欧拉函数]
    数列的 GCD [计数问题]
    com组件的注册
    WCF 传输和接受大数据
    数据库中已存在名为 'View_Business' 的对象。
    windows 两个用户,默认其中一个用户登录
    用C#读取,写入ini文件
    小心得,关于串口
    未能加载文件或程序集"Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad
    无法激活服务,因为它不支持 ASP.NET 兼容性
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9103178.html
Copyright © 2011-2022 走看看