这是我的代码
<?php
$filename = 'names.txt';
$file = fopen($filename, 'w');
fwrite($file, implode(", ", $filename));
?>
我的names.txt文件数据是这样的
saad
Alex
Ashmil
Shumail
Fredrik
除了最后一个名字之外,我希望在每个名字后加上一个qoma。 。但我接受了“错误的论点传递给内爆函数”的错误。告诉我现在该怎么做?
预期output
应为
saad, Alex, Ashmil, Shumail
答案 0 :(得分:2)
您可以使用此代码:)
<?php
$filename = 'names.txt';
$file_read = fopen($filename, 'r');
$content = fread($file_read, filesize($filename));
$content = trim(preg_replace('/\s\s+/', ' ', $content));
$pieces = explode(" ", $content);
$file_write = fopen($filename, 'w');
fwrite($file_write, implode(", ", $pieces));
fclose($file_read);
fclose($file_write);?>
答案 1 :(得分:2)
这对我有用:)
<?php
$file = 'names.txt';
$array = file($file); // Creates an array of each line
$array = array_slice($array,0,-1); // Pops the last element of an array
$string = implode(','.PHP_EOL, $array); // Implode
file_put_contents($file, str_replace("\n","",$string));
?>
并给了我预期的输出..
感谢@hamza,@ Vivek以及其他所有人......
答案 2 :(得分:1)
只需使用file()
:
$file = 'names.txt';
$array = file($file); // Creates an array of each line
array_pop($array); // Remove the last value of the array
$string = implode(', ', $array); // Implode
file_put_contents($file, $string); // Write to file
答案 3 :(得分:1)
使用: -
$file = 'names.txt';
$array = file($file); // Creates an array of each line
$array = array_slice($array,0,-1); // Pops the last element of an array
$string = implode(','.PHP_EOL, $array); // Implode
file_put_contents($file, str_replace(PHP_EOL,"",$string));
输出: -
saad, Alex, Ashmil, Shumail
答案 4 :(得分:1)
也尝试这个。 它工作......
<?php
$file = 'names.txt';
$array = file($file); // Creates an array of each line
$array = array_slice($array,0,-1); // Pops the last element of an array
$string = implode(',', $array); // Implode
file_put_contents($file, str_replace("\n","",$string));
?>