php - 使用 "file"然后使用 "foreach"会导致值之间换行

标签 php file foreach

我创建一个包含随机数的文件:

<?php
$file = 'test.txt';
for ($i=1; $i<=100; $i++) {
$rand_num = rand(10000,20000);
file_put_contents($file, $rand_num . PHP_EOL, FILE_APPEND);
}
?>

然后我使用“file”从文件中读取数据并操作每一行(不包含在此处的代码中)。当我再次将数据放入文件中时 - $value 之后有一个换行符:

<?php
$file = 'test.txt';
$fp = fopen($file, 'rb');
$content = file($file);
file_put_contents($file, '');
foreach ($content as $value){
file_put_contents($file, $value . PHP_EOL, FILE_APPEND);
}
?>

而不是给我:

190191
920191
829281

它给了我:

190191

920191

829281

如果我做类似的事情: $processed_line = "$value 很好";

它将显示:

190191
value is good
920191
value is good
829281
value is good

不要将字符串放在 $value 旁边 - 190191 比较好。

有什么想法吗? 感觉我错过了一些微小而愚蠢的事情。 谢谢。

最佳答案

使用 $value = trim($value, "\r\n"); 作为循环中的第一行

问题是因为在值的末尾你已经有 \n 符号

关于php - 使用 "file"然后使用 "foreach"会导致值之间换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19531433/

相关文章:

JavaScript 将对象数组的数组转换为对象数组

php - 从 select 语句 php 中选择 1 行

php - 只是为了好玩 - 开始解决一个棘手的 PHP 逻辑问题

c - 将 fopen 与临时系统变量一起使用

C++ 迭代,文件 i/o

php - stdClass 对象和 foreach 循环

javascript - JQuery 在 ajax 加载数据库后不起作用

调用外部程序时 php exec() 返回错误(postmap)

php - 整个网页使用一个文件的优点和缺点?

php - 检查 foreach 循环中变量值的变化