• 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

  • 相关阅读:
    mysql删除重复数据
    Spring缓存注解
    Spring事物不回滚
    java.net.MalformedURLException: no protocol: www.baidu.com
    shred:减少删除文件的还原度
    rm命令防止误操作
    软链接:要根据软链接来写路径
    linux与windows文本文件间的转换:针对回车换行
    cat:文本编辑工具
    算术运算;赋值
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9103178.html
Copyright © 2020-2023  润新知