将逗号添加到文本文件PHP中每行的末尾

时间:2015-03-14 01:13:02

标签: php file

我本周开始学习PHP,需要在文本文件的每一行末尾添加一个逗号。我真的不知道从哪里开始。加载文件后我该怎么办?我找不到任何教程说如何写到每行的末尾只有文件的开头或结束?是否可以指定每一行的结尾?

到目前为止我所拥有的:

 fopen("file.txt",a)
 ????

我正在使用“a”因为我想保留数据。

2 个答案:

答案 0 :(得分:4)

这应该适合你:

(这里我只使用file()获取所有文件行。然后我使用array_map()遍历每一行并在结尾处连接逗号。之后我使用{保存带有新内容的文件{3}})

<?php

    $lines = file("test.txt", FILE_IGNORE_NEW_LINES);
    $lines = array_map(function($v){return $v . "," . PHP_EOL;}, $lines);
    file_put_contents("test.txt", $lines);

?>

示例文件:

a
a
a

脚本之后:

a,
a,
a,

修改

如果您不想在空行中添加逗号,只需添加条件以检查该行是否为空:

<?php

    $lines = file("test.txt", FILE_IGNORE_NEW_LINES);
    $lines = array_map(function($v){return $v . (empty($v)?"":",") . PHP_EOL;}, $lines);
    file_put_contents("test.txt", $lines);

?>

答案 1 :(得分:0)

你想用一些特定角色替换所有EOL吗?

$EOLChar=",";
$myFile = fopen("file.txt", "r") ;
$newFile="";
while(!feof($myFile)) {
    $newFile.= str_replace(PHP_EOL, $EOLChar, fgets($myFile));
}
fclose($myFile);
file_put_contents("file.txt", $newFile);