Datei erstellen

Wie erstellen und füllen wir eine Datei mittels PHP?

Die Funktion fopen() öffnet eine Datei zum Schreiben und/oder Lesen und gibt ein Dateihandle zurück. Mit diesem Dateihandle kann mit den Funktionen fgets(), fputs() usw. auf die Datei zugegreifen.
fopen(string $dateiname, string $mode [, bool $use_include_path = false [, resource $context ]]).

$mode
Mite mode kann man angeben wie man diese Datei öffnen möchte:
‘r’ Nur zum Lesen geöffnet; platziere Dateizeiger auf Dateianfang.
‘r+’ Zum Lesen und Schreiben geöffnet; platziere Dateizeiger auf Dateianfang.
‘w’ Nur zum Schreiben geöffnet; platziere Dateizeiger auf Dateianfang und kürze die Datei auf eine Länge von 0. Existiert die Datei nicht, versuche, diese zu erzeugen.
‘w+’ Zum Schreiben und Lesen geöffnet; platziere Dateizeiger auf Dateianfang und kürze die Datei auf eine Länge von 0. Existiert die Datei nicht, versuche, diese zu erzeugen.
‘a’ Nur zum Schreiben geöffnet; platziere Dateizeiger auf Dateiende. Existiert die Datei nicht, versuche, diese zu erzeugen.
‘a+’ Zum Schreiben und Lesen geöffnet; platziere Dateizeiger auf Dateiende. Existiert die Datei nicht, versuche, diese zu erzeugen.
‘x’ Erzeuge und Öffne nur zum Schreiben; platziere Dateizeiger auf Dateianfang. Falls die Datei schon existiert, wird der fopen() Aufruf fehlschlagen durch Rückgabe von FALSE und dem Auslösen eines Fehlers der Stufe E_WARNING. Existiert die Datei nicht, versuche, diese zu erzeugen. Dies ist zur Angabe der O_EXCL|O_CREAT Flags für den darunterliegenden open(2) System Aufruf äquivalent.
‘x+’ Erzeuge und Öffne zum Schreiben und Lesen; ansonsten ist das Verhalten gleich wie bei ‘x’.
‘c’ Öffne Datei nur zum Schreiben. Wenn die Datei nicht existiert, wird diese erzeugt. Wenn sie existiert, wird sie weder gekürzt (im Gegensatz zu ‘w’), noch schlägt der Aufruf dieser Funktion fehl (wie dies mit ‘x’ der Fall ist). Der Dateizeiger wird auf den Dateianfang platziert. Dies kann nützlich sein, wenn man eine “beratende” (kooperative) Sperre erhalten möchte (siehe flock()) bevor man versucht, die Datei zu ändern, da die Nutzung von ‘w’ die Datei kürzen könnte, bevor die Sperre erhalten wurde (falls Kürzen gewünscht ist, kann ftruncate() genutzt werden, nachdem die Sperre angefragt wurde).
‘c+’ Öffne Datei zum Lesen und Schreiben; ansonsten ist das Verhalten gleich wie bei ‘c’.

Quelle PHP.net fopen()

Machen wir mal ein kleines Beispiel

<?php
$dateiname = "test.txt";
$datei = fopen("$dateiname", "w");
fputs($datei, "Hallo das ist meine Testdatei! \n");
fclose($datei);
?>

Die Ausgabe wäre:

Es gäbe keine Ausgabe, weil ja nur eine Datei erstellt wird wenn sie nicht existiert oder die vorhandene mit dem Inhalt “Hallo das ist meine Testdatei!” überschrieben.
Wichtig:
Die Datei wird im selben Verzeichnis erstellt wo auch das Script ausgeführt wird, hierfür sind Schreibrechte sehr wichtig CHMOD 0777.

Tags » , , , «

Datum: Sonntag, 11. Dezember 2011 12:59 Scriptsammlung
Diesen Artikel kommentieren.
Pingen ist momentan nicht möglich.

Ein Kommentar

  1. 1

    This arictle went ahead and made my day.

Kommentar abgeben