Difference between revisions of "PHP Speichern, Editieren, Öffnen von Dateien"

From Coders.Bay Wiki
Jump to navigation Jump to search
Line 23: Line 23:
*https://www.php.net/manual/de/function.feof.php
*https://www.php.net/manual/de/function.feof.php
*https://www.php.net/manual/de/function.fclose.php
*https://www.php.net/manual/de/function.fclose.php
<pre>
<?php
$handle = fopen('beispiel.txt', 'r');
$result = array();
if($handle) {
  $i = 0;
  while(!feof($handle)) {
    $content = fgets($handle);
    $result[$i] = $content;
    $i++;
    print $content."<br>\n";
  }
  fclose($handle);
} else {
  print "Datei konnte nicht geöffnet werden<br>\n";
}
?>
</pre>

Revision as of 11:01, 14 April 2022

fopen(), fgets(), fclose()

  • Befehl fopen() öffnet eine Datei oder URL
  • nach dem Dateinamen folgt der Modus => spezifiziert Zugriffstyp
    • r – nur zum Lesen geöffnet, platziert Dateizeiger am Dateianfang
    • r+ – Lesen und Schreiben, platziert Dateizeiger am Dateianfang
    • w – nur zum Schreiben, platziert Dateizeiger am Dateiende.
    • w+- zum Schreiben und Lesen geöffnet, platziert Dateizeiger am Dateiende. Existiert Datei nicht, versucht, diese zu erzeugen
    • a – zum Erweitern der bestehenden Inhalte
  • fopen() erzeugt als Rückgabewert einen Handle => bietet im Programm Zugriff auf Datei und muss in Variable gespeichert werden
    • Üblich $handle oder $fh (file handle) zu nennen
  • Um jede Zeile aus File einzulesen => while-Schleife
  • feof – Prüft, ob ein Dateizeiger am Ende der Datei steht.
  • Solange er nicht am Ende ist hat er Wert false
  • fgets() – Liest eine Zeile von der Position des Dateizeigers.
  • fclose() – schließt den Zugriff auf die Datei wieder und sollte immer nach der letzten Verwendung des Handles eingefügt werden


Links:

<?php
$handle = fopen('beispiel.txt', 'r');

$result = array();
if($handle) {
  $i = 0;
  while(!feof($handle)) {
    $content = fgets($handle);
    $result[$i] = $content;
    $i++;
    print $content."<br>\n";
  }
  fclose($handle);
} else {
  print "Datei konnte nicht geöffnet werden<br>\n";
}
?>