代码执行后我的文件如下所示:
1.info
2.
3.info
4.
5.info
....
我在fopen尝试了不同的模式,但仍然是相同的。
<?php
$file = 'data.txt';
$lines = file($file);
$newArr = array();
$f = fopen($file,'r+');
foreach($lines as $value){
$newArr[] = $value;
}
unset($newArr[$_GET['id']-1]);
foreach($newArr as $vv){
fwrite($f, $vv.PHP_EOL);
}
fclose($f);
?>
答案 0 :(得分:0)
看来这是相同的,应该有效:
$file = 'data.txt';
$lines = file($file, FILE_SKIP_EMPTY_LINES);
unset($lines[$_GET['id']-1]);
file_put_contents($file, $lines);
无论出于何种原因使用fwrite():
$file = 'data.txt';
$lines = file($file, FILE_SKIP_EMPTY_LINES);
unset($lines[$_GET['id']-1]);
$f = fopen($file, 'w');
fwrite($f, implode($lines));
/*
foreach($lines as $vv) {
fwrite($f, $vv);
}
*/