今天在利用 php 脚本写一个关于写入 txt 文件内容换行的逻辑时,发现其中的学问挺大的,下面就来详细的来说一下,有需要的就拿去吧。

在不同的系统下,txt 文件的换行符是不一样的,比如:

windows 系统中以 “\r\n”为换行

Mac系统中 “\r”是换行

Liunx系统中 “\n”是换行

php中向TXT文件写入换行方法

通过上面的介绍,我们知道的了在不同系统中,写入 TXT 文件的换行不同,下面以 windows 系统为例,介绍一下 php 写入 txt 文件换行的示例。

php代码:

<?php
$str = null;
for ($i=0; $i < 100; $i++) { 
    $str .= $i."\r\n"; //这里必须是双引号,一般情况下所有系统都会使用 \r\n 做为换行符
}
@file_put_contents('text.txt',$str);
?>

文件写入效果:

php 写入txt文件内容换行的方法

php PHP_EOL 变量来替代TXT中的换行符

在实际的php开发中,由于系统的兼容性,不推荐上面的代码来进行 TXT 文件内容的换行。而 php 给我们提供了一个自动生成换行符号的变量  PHP_EOL。

PHP_EOL:在php中用来替代换行符,以提高代码的可移植性。

可以通过下面的代码,来更好的理解预定义变量 PHP_EOL 的作用。

php代码:

<?php
echo PHP_EOL;
//windows平台相当于    echo "\r\n";
//unix\linux平台相当于    echo "\n";
//mac平台相当于    echo "\r";
?>

示例:

<?php
$str = null;
for ($i=0; $i < 100; $i++) { 
    $str .= $i.PHP_EOL; //PHP_EOL 替代的 “\r\n” 换行符
}
@file_put_contents('text.txt',$str);
?>