嗨,我在重写文件时遇到问题。当我删除文件中的最后一行并将数组重写回临时文件时,我会得到一个空白,就像最后会弄乱项目中的其他文件一样。
这是联系人文本文件
1|Mr.|Blank|Blank|||||||||
2|Mr.|Blank2|Blank2|||||||||
3|Mr.|Blank3|Blank3|||||||||
这是删除的代码
<?php
$select = 3;
$tempFilename = 'contacts_temp';
touch($tempFilename);
$file_name = "contacts";
$file = fopen($file_name, "r+")or exit("Unable to open file!");
$tempfile = fopen($tempFilename, "r+")or exit("Unable to open file!");
for($c=0;!feof($file);$c++)
{
$top = fgets($file);
$contactsArray[$c] = $top;
}
for ($d=0; $d!=count($contactsArray);$d++){
//echo $usersArray[$d];
$tempusersArray[$d] = explode('|', $contactsArray[$d]);
}
rewind($tempfile);
for ($c=0;$c<count($contactsArray);$c++){
if($tempusersArray[$c][0]==$select){
unset($contactsArray[$c]);
}elseif($contactsArray[$c]==NULL){
unset($contactsArray[$c]);
break;
}else{
trim($contactsArray[$c]);
}
}
var_dump($contactsArray);
file_put_contents($tempFilename,$contactsArray);
?>
当它运行时,我会像这样得到一个文件
1|Mr.|Blank|Blank|||||||||
2|Mr.|Blank2|Blank2|||||||||
//There would be a blank line here
谢谢是提前!