Hallo, dedlfix,
Deine beiden Vorschläge sind einfach fehlerhaft.
mag sein, war ja auch ungetestet. Dann musst Du die beiden Methoden eben kombinieren, d.h. zuerst zum Lesen öffnen, dann zum Schreiben öffnen so daß alte Inhalte gelöscht werden.
So hab' ich es schon tausendmal gemacht und zwar mit folgenden Funktionen ...
function readFromFile($file)
{
$str=0;
if($file!=''&&file_exists($file)&&is_file($file)&&is_readable($file)) {
$fp=fopen($file,'r');
flock($fp,LOCK_SH);
$str=fread($fp,filesize($file));
flock($fp,LOCK_UN);
fclose($fp);
}
return $str;
}
function writeToFile($file,$str)
{
$success=0;
if($file!='') {
$fp=fopen($file,'w');
flock($fp,LOCK_EX);
if(fwrite($fp,$str))$success=1;
flock($fp,LOCK_UN);
fclose($fp);
return $success;
}
}
Grüße,
Sebastian