我创建一个包含随机数的文件:
<?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/