In Dateien schreiben und Daten anhängen
Schreiben Sie Daten mit file_put_contents und FILE_APPEND in Dateien.
In Dateien schreiben und Daten anhängen ist eine kostenlose PHP Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des PHP Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der PHP Academy-Kurs umfasst insgesamt 4 Lektionen.
Dateien in PHP schreiben
PHP bietet mehrere Möglichkeiten, in Dateien zu schreiben:
file_put_contents()– Zeichenfolge mit einem Aufruf in eine Datei schreibenfopen()+fwrite()– streambasiertes Schreiben- Verwenden Sie das Flag
FILE_APPEND, um Inhalte anzuhängen statt zu überschreiben
file_put_contents()
Eine Zeichenfolge in eine Datei schreiben – erstellt die Datei, falls sie nicht existiert, und überschreibt sie, falls sie bereits vorhanden ist:
<?php
$data = "Hello, PHP!\nThis is line 2.\n";
$bytes = file_put_contents('/tmp/output.txt', $data);
if ($bytes === false) {
echo 'Failed to write';
} else {
echo "Wrote $bytes bytes";
}Mit FILE_APPEND anhängen
Fügen Sie mit dem Flag FILE_APPEND Inhalte am Ende einer vorhandenen Datei hinzu:
<?php
$logEntry = date('Y-m-d H:i:s') . ' - User logged in' . PHP_EOL;
file_put_contents(
'/var/log/app.log',
$logEntry,
FILE_APPEND | LOCK_EX // append + exclusive lock
);Schreibmodi von fopen
Die Modi zum Öffnen mit fopen legen fest, wie die Datei geöffnet wird:
'w'– schreiben, auf Länge null kürzen oder erstellen'a'– schreiben, anhängen, erstellen, falls nicht vorhanden'x'– schreiben, fehlschlagen, falls die Datei bereits existiert'r+'– ab dem Anfang lesen und schreiben, Datei muss existieren
fopen + fwrite
Streambasiertes Schreiben für präzise Kontrolle:
<?php
$handle = fopen('/tmp/report.txt', 'w');
if ($handle === false) die('Cannot open file');
fwrite($handle, "Report generated: " . date('Y-m-d') . "\n");
fwrite($handle, str_repeat('-', 40) . "\n");
fwrite($handle, "Total: 1234\n");
fclose($handle);
echo 'Report written';CSV-Dateien schreiben
Verwenden Sie fputcsv(), um korrekt formatierte CSV-Zeilen zu schreiben:
<?php
$rows = [
['Name', 'Email', 'Score'],
['Alice', 'alice@test.com', 95],
['Bob', 'bob@test.com', 87],
];
$handle = fopen('/tmp/results.csv', 'w');
foreach ($rows as $row) {
fputcsv($handle, $row);
}
fclose($handle);JSON-Dateien schreiben
PHP-Daten in JSON serialisieren und in eine Datei schreiben:
<?php
$config = [
'version' => '2.0',
'debug' => false,
'db' => ['host' => 'localhost', 'port' => 3306],
];
$json = json_encode($config, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
file_put_contents('/app/config.json', $json);
echo 'Config saved';Atomare Dateischreibvorgänge
Schreiben Sie zunächst in eine temporäre Datei und benennen Sie sie anschließend um, um atomare, absturzsichere Aktualisierungen zu ermöglichen:
<?php
$target = '/app/data.json';
$tmpFile = $target . '.tmp.' . uniqid();
$data = json_encode(['ts' => time(), 'value' => 42]);
file_put_contents($tmpFile, $data, LOCK_EX);
rename($tmpFile, $target); // atomic on most OSes
echo 'File updated atomically';Berechtigungen und Eigentümerschaft
Setzen Sie Dateiberechtigungen nach der Erstellung mit chmod():
<?php
$path = '/var/www/uploads/avatar.jpg';
// Copy uploaded temp file to destination
move_uploaded_file($_FILES['avatar']['tmp_name'], $path);
// Set permissions (owner read/write, group read, world read)
chmod($path, 0644);
echo 'File uploaded and permissions set';Temporäre Dateien
Erstellen Sie mit tempnam() oder tmpfile() sicher temporäre Dateien:
<?php
// Create a named temp file
$tmpPath = tempnam(sys_get_temp_dir(), 'php_');
file_put_contents($tmpPath, 'temp data');
$content = file_get_contents($tmpPath);
unlink($tmpPath); // delete when done
// Anonymous temp file handle
$tmp = tmpfile();
fwrite($tmp, 'anonymous temp');
// auto-deleted when $tmp is garbage collectedDateien kopieren und verschieben
Kopieren und benennen Sie Dateien mit integrierten Funktionen um oder verschieben Sie sie:
<?php
// Copy a file
copy('/src/template.html', '/dst/page.html');
// Move / rename
rename('/tmp/upload_abc', '/storage/images/photo.jpg');
// Delete
unlink('/tmp/old_file.txt');
// Check if file was copied successfully
if (copy('a.txt', 'backup.txt')) {
echo 'Backup created';
}Schnelltest
Welches Flag übergeben Sie an file_put_contents(), um Inhalte am Ende einer Datei anzuhängen, statt sie zu überschreiben?
Zusammenfassung: Dateien schreiben
Grundlagen zum Schreiben von Dateien:
file_put_contents()– einfachstes Schreiben und Überschreiben- Flag
FILE_APPENDzum Anhängen fopen('a', ...)+fwrite()für Streamingfputcsv()für CSV-Ausgaben- Atomare Schreibvorgänge: in temporäre Datei schreiben +
rename() chmod()zum Setzen der Berechtigungen nach der Erstellung
Häufig gestellte Fragen
Ist die Lektion „In Dateien schreiben und Daten anhängen“ kostenlos?
Ja — der vollständige Text von „In Dateien schreiben und Daten anhängen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des PHP Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der PHP Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „In Dateien schreiben und Daten anhängen“?
Schreiben Sie Daten mit file_put_contents und FILE_APPEND in Dateien. Du übst PHP Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um PHP Academy zu starten?
Keine Vorkenntnisse erforderlich. PHP Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „In Dateien schreiben und Daten anhängen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser PHP Academy-Lektion Code schreiben und ausführen?
Ja. Jede PHP Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Dateien mit PHP auslesen
- In Dateien schreiben und Daten anhängen
- Mit Verzeichnissen arbeiten
- Datei-Uploads verarbeiten