Impressum    .    Kontakt    .    Links            srware.net auf Deutsch    srware.net on english 
minibalken
logo
minibalken
weis
news

Startseite



Allgemeines
Voraussetzungen


PHP
Variablen
Textausgabe/echo

Mathemathische Funktionen
if/else-Anweisung
for-Schleife

while-Schleife
Arrays und foreach
Dateien (Lesen/Schreiben)
Datum und Zeit in PHP
E-Mails
Cookies
Runden

MySQL
Verbindung

Daten auslesen (SELECT)
Daten hinzufügen (INSERT)
Daten löschen (DELETE)
Daten ändern (UPDATE)

Sicherheit
Eingaben maskieren

SQL Injektionen verhindern

Smarty Template-Engine
Was ist Smarty?

Installation und Einbindung
Templates anzeigen
Variablen übergeben
Code ignorieren
Schleifen mit Smarty







weis
weis
home_überschrift

Der Umgang mit Dateien in PHP


Der Umgang mit Dateien ist in PHP einfacher als viele denken. Wenn man das Prinzip einmal verstanden hat, ist es ist mehr nicht wirklich kompliziert aus Dateien zu lesen, Daten anzuhängen oder zu überschreiben.

Eine Datei muss zuallererst geöffnet werden, unabhängig davon ob wir nur lesen oder auch schreiben wollen. Dies geschieht mittels des Befehls "fopen".

Die Syntax lautet:

 <?php
$datei = fopen(Dateiname, Modus);
?>




    
Wie man sieht, muss noch ein Parameter benannt werden, der den Modus angibt, in dem die Datei geöffnet werden soll:

Modus "r":
Öffnet die Datei nur zum Lesen, der Dateizeiger wird auf den Anfang der Datei gesetzt, Datei muss vorhanden sein

Modus "r+":
Öffnet die Datei zum Lesen und Schreiben, Dateizeiger wird auf den Anfang der Datei gesetzt, Datei muss vorhanden sein

Modus "w":
Öffnet die Datei nur zum Schreiben, Dateizeiger wird auf den Anfang der Datei gesetzt, sofern die Datei bereits besteht, wird sie überschrieben. Sofern die Datei nicht existiert, wird diese neu angelegt.

Modus "w+":
Öffnet die Datei zum Lesen und Schreiben, der Dateizeiger wird auf den Anfang der Datei gesetzt, sofern die Datei bereits besteht, wird sie überschrieben. Sofern die Datei nicht existiert, wird diese neu angelegt.

Modus "a":
Öffnet die Datei nur zum Schreiben, der Dateizeiger wird an das Ende der Datei gesetzt (vorhandener Inhalt wird nicht überschrieben, sondern neuer Inhalt am Dateiende hinzugefügt). Sofern die Datei nicht existiert, wird diese neu angelegt.

Modus "a+":
Öffnet die Datei zum Lesen und Schreiben, der Dateizeiger wird an das Ende der Datei gesetzt (vorhandener der Inhalt wird nicht überschrieben, sondern neuer Inhalt am Dateiende hinzugefügt). Sofern die Datei nicht existiert, wird diese neu angelegt.

Wie man sehen kann, gibt es für quasi jeden Verwendungszweck einen eigenen Modus. Vorsichtig muss man natürlich bei w und w+ sein, da hier vorhander Inhalt ohne Warnung überschrieben wird. Mit Dateizeiger ist schlicht die Position gemeint, an der mit der Lese oder Schreibarbeit begonnen werden soll - eben am Anfang oder am Ende der geöffneten Datei.

Nachdem die mit einem Datei geöffnet ist, muss natürlich noch ein entsprechender Schreib- oder Lesebefehl gesendet werden und die Datei abschleissend wieder geschlossen werden. Auch wenn es anfangs kompliziert klingt, lässt es sich mit einigen Beispielen am besten verstehen.

Beispiel 1: Wir möchten eine Zeile Text aus einer Datei lesen und anzeigen lassen.

<?
$datei = fopen("beispiel.txt","r+");
echo fgets($datei);
fclose($datei);
?>


Der Befehl fgets dient zum zeilenweisen Auslesen einer Datei, der Befehl flcose schliesst sie wieder. Beispiel 1 bewirkt also, dass die erste Zeile der Datei beispiel.txt am Bildschirm angezeigt wird.

Beispiel 2: Wir möchten einen Text an eine vorhandene Datei anhängen:

<?
$datei = fopen("beispiel.txt","a");
fwrite($datei,"Beispieltext");
fclose($datei);
?>

Dies bewirkt, dass der "Beispieltext" an die vorhandene Datei angehängt wird.
 
weis