Newsletter

  • Immer informiert über die neusten Trends, Webseiten und Tutorials! Einfach hier für den monatlichen Newsletter anmelden.
  •  Eintragen
  •  Austragen

Login

Umfrage

  • Haben Sie Interesse an Softwaretipps für Webmaster?
  •  
  • ja
  • nein
  •  


Linktipps

Anzeige

 

www.finanzcheck.de
» Startseite » PHP und MySQL Tutorials

Dateien mit PHP einlesen

Wie kann ich mit PHP eine Datei einlesen.

Man kann eine Datei manuell öffnen und Zeile für Zeile lesen:

  1.  <?php
  2.  // datei öffnen
  3.  $fp = @fopen("datei", "r") or die ("Kann Datei nicht lesen.");
  4.  // datei zeilenweise auslesen
  5.  while($line = fgets($fp, 1024)){
  6.  machwas($line);
  7.  }
  8.  // datei schliessen
  9.  fclose($fp);
  10.  ?>


Dies verwendet die Funktionen fopen() und fgets().
Wenn die gelesenen Zeilen sofort ausgegeben werden sollen, dann kann man dies kürzer mit fpassthru() oder gar readfile() schreiben:

  1.  <?php
  2.  // datei öffnen
  3.  $fp = @fopen("datei", "r") or die ("Kann Datei nicht lesen.");
  4.  // datei auslesen und ausgeben
  5.  fpassthru($fp);
  6.  // datei schliessen kann hier entfallen!
  7.  // fclose($fp);
  8.  // noch einfacher ist es mit readfile():
  9.  readfile("datei");
  10.  ?>


Will man stattdessen die Daten in der Datei in einem Array zur Verfügung haben, kann man file() verwenden.
Will man die Daten in der Datei in einem einzigen String zur Verfügung haben, muss man dies mit implode() kombinieren:

  1.  <?php
  2.  // einlesen in array
  3.  $avar = file("datei");
  4.  // einlesen in string
  5.  $str = implode(" ",file("datei"));
  6.  // mit unterdrückten meldungen
  7.  $str = implode(" ", @file("datei"));
  8.  ?>


In jedem Fall kann man den Funktionen wie üblich einen Klammeraffen (@) voranstellen, um die Fehlermeldungen zu unterdrücken.
Die häufigste Fehlermeldung bei fopen() & Co. ist "Warning: Supplied argument is not a valid File-Handle resource".
Im safe_mode unterliegt das Lesen und Schreiben von Dateien weiteren Einschränkungen.

Fragen? Probleme? Keine Antworten? Hilfe finden Sie im Webmaster Forum!

Diese Artikel könnten Sie auch interessieren:
Reguläre Ausdrücke
Alternative Syntax für Kontroll-Strukturen
Unterschiedlicher Footer auf verschiedenen Seiten
String nach Wortende trennen
Was ist PHP?


 
Anzeige