So erstellen oder hängen Sie Text an eine Datei an
Sie versuchen, eine Textdatei namens „logs.txt“ zu erstellen oder an sie anzuhängen. jedes Mal, wenn sich ein Benutzer auf Ihrer Website an- oder abmeldet. Allerdings treten in Ihrem aktuellen Code Probleme beim Anhängen von Daten oder beim Erstellen der Datei auf, wenn diese nicht vorhanden ist.
Ihr Originalcode verwendet den „wr“-Modus zum Öffnen der Datei, der sie zum Schreiben öffnet und abschneidet Datei auf die Länge Null bringen. Um Daten anzuhängen, sollten Sie stattdessen den „a“-Modus verwenden, der die Datei zum Schreiben und Anhängen an das Ende der Datei öffnet.
Außerdem ist Ihr Code anfällig für Race Conditions, wenn mehrere Benutzer versuchen, darauf zuzugreifen die Datei gleichzeitig. Um dies zu verhindern, können Sie das Flag LOCK_EX in Verbindung mit FILE_APPEND verwenden. Dadurch wird eine exklusive Sperre für die Datei aktiviert, sodass jeweils nur ein Prozess darauf schreiben kann.
Hier ist eine verbesserte Version Ihres Codes, die diese Probleme behebt:
<code class="php">$txt = "user id date"; $myfile = file_put_contents('logs.txt', $txt.PHP_EOL, FILE_APPEND | LOCK_EX);</code>
Dieser Code erstellt oder öffnet die Datei „logs.txt“ im Anhängemodus und stellt so sicher, dass die neuen Daten am Ende der Datei angehängt werden. Außerdem erhält die Datei während des Schreibens eine exklusive Sperre, wodurch verhindert wird, dass mehrere Benutzer gleichzeitig in die Datei schreiben.
Das obige ist der detaillierte Inhalt vonWie kann ich in PHP Text sicher an eine Datei anhängen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!