2

您好我正在尝试运行一个简单的 php 文件打开、替换和保存。这是我的代码:

//open file and get data
$data = file_get_contents("input.xml");

// do tag replacements or whatever you want
$data = str_replace("<Property>", "<item>", $data);
$data = str_replace("</Property>", "</item>", $data);

//save it back:
file_put_contents("output.xml", $data);

我的文件打开、替换并保存文件。但是当我打开文件时,我注意到在之前只有一个换行符的每个项目之后都有一个额外的换行符。

我测试了将数据直接打印到我的浏览器,并注意到在 中引入了额外的换行符file_get_contents,而不是在写回新文件时。

任何人都知道如何防止这些额外的线路返回首先被引入?

谢谢!

4

2 回答 2

1

非常感谢评论者,这比我想象的更容易解决:

我刚刚做了以下补充:

// fix line endings 
$data = str_replace("\r\n", "\n", $data);
于 2013-08-15T14:23:50.160 回答
1

file_get_contents 在返回的字符串末尾添加换行符。这帮助我删除了换行符:

$content = trim($content, "\r\n");

于 2020-08-24T12:30:54.487 回答