file_put_contents schreibt doppelt in Datei?
Mein fpc schreibt doppelt in meine Text Datei: was kann ich tun?
Code:
<?php
$szeit = $_POST['szeit'];
$ezeit = $_POST['ezeit'];
$bs = $_POST['bs'];
$time = date("d/m/y");
$kombiniert = $time . " " . $szeit . " " . $ezeit . " " . $bs . PHP_EOL;
$file = "zeiten.txt";
// Letzen Einträge lesen
$altinhalt = file_exists($file) ? file_get_contents($file) : "";
// Neuer und alter Inhalt verbinden
$neuerInhalt = $kombiniert . $altinhalt;
// Datei mit neuer Reihenfolge speichern
file_put_contents($file, $neuerInhalt, FILE_APPEND | LOCK_EX);
?>
2 Antworten
https://www.php.net/manual/de/function.file-put-contents.php
Du ließt den Inhalt der Datei und hängst ihn wieder an die Datei an. Dann ist er natürlich mehrfach in der Datei.
Entweder du überschreibst einfach den Inhalt, statt anzuhängen, oder du hängst den neuen Inhalt einfach ans Ende der Datei an, dann musst du sie nichtmal vorher lesen.
Woher ich das weiß:Berufserfahrung – Tätigkeit als Webentwickler in einer Digitalagentur

Dein Code holt sich den alten Inhalt und fügt ihn dann mit FILE_APPEND nochmal an – entweder den alten Inhalt weglassen oder FILE_APPEND rausnehmen.
Woher ich das weiß:Hobby – Jahre langes lernen