Impressum
GoTo:
Home
 
die Amika Methode die Amika Methode   
 
Lesezeichen [ Jobs # QR-Code # Publikationen ]Do 21 Nov 2024 10:42:58


 huecker.com # Grundlagen der Programmierung.
--

 

. PHP L e k t i o n e n ( Thu Nov 21 10:42:58 2024 ) .

06 . Dateien.

PHP eröffnet eine Fülle von Möglichkeiten, um Dateien zu nutzen. Dazu zählen unter anderem: - Dateien anlegen, öffnen, schreiben, schließen, Inhalt ausgeben, benötigte Informationen über eine Datei abfragen, wie etwa den Eigentümer, - und so weiter.

 

. Datei: - erzeugen, öffnen, schreiben, lesen, schließen, löschen .


<?

$path = "/home/www/pub/fh1000/huecker.com/msw/php/samples/arc";
$file = "$path/foo.dat";

if ( file_exists ( $path ) == 0 ) { mkdir ( $path, 0777 ); }; // Verzeichnis anlegen.
if ( file_exists ( $file ) == 0 ) { touch ( $file ); }; // leere Datei anlegen.

$fp = fopen ( $file, "w+" ); // Datei öffnen.
  fwrite ( $fp, "Erste Zeile\n" ); // . schreiben
  fputs ( $fp, "Zweite Zeile\n" ); // . schreiben
  fwrite ( $fp, "Dritte Zeile\n" ); // . schreiben
fclose ( $fp ); // Datei schließen.

if ( $fp = fopen ( $file, "r" ) ) {
  while ( !feof ( $fp ) ) {
    $line = fgets ( $fp, 4096 );
    echo ( "<br> $line" ); // zeilenweise Ausgabe.
  };
};

fclose ( $fp ); // Datei schließen.
unlink ( $file ); // Datei löschen.

?>
 

Die Funktion . file_exists() . prüft die Existenz einer Datei. Soll zudem geprüft werden, ob Lese- und/oder Schreibrechte ( reguläre Datei ) existieren, müssen die Funktionen . is_file() . oder . is_readable() . und . is_writable . verwendet werden.

Testen ( . Syntax Dateiname: name.php, - bspw. file.php ! . )

 

--

. Zugriffsrechte unter Unix .
Owner Group Public
r w x r w x r w x
400 200 100 40 20 10 4 2 1
Legende: r = lesen, w = schreiben, x = ausführen.

 . Beispiel zu den Zugriffsrechten unter Unix .
chmod 0764 ( Owner = 700 = rwx | Group = 60 = rw- | Public = 4 = r-- )

--

Schalter zum Öffnen einer Text-Datei: r = Lesen, - Zeiger auf Anfang; r+ = Lesen, Schreiben, - Zeiger auf Anfang; w = Schreiben, - Zeiger auf Anfang, Länge auf 0 Byte; w+ = Lesen, Schreiben, - Zeiger auf Anfang, Länge auf 0 Byte; a = Schreiben, - Zeiger an das Ende; a+ = Lesen, Schreiben, - Zeiger an das Ende. - Falls w(+) und a(+) verwendet werden und die Datei noch nicht existiert, wird sie angelegt.

--

 

. Informationen über Dateien .


<?

$path = "/home/www/pub/fh1000/huecker.com/msw/php/samples/arc";
$file = "$path/foo.dat";

if ( file_exists ( $path ) == 0 ) { mkdir ( $path, 0777 ); }; // Verzeichnis anlegen.
if ( file_exists ( $file ) == 0 ) { touch ( $file ); }; // leere Datei anlegen.

$fp = fopen ( $file, "w+" ); // Datei öffnen mit mode 'w+'.
  fwrite ( $fp, "Inhalt, Inhalt\n" );
fclose ( $fp ); // Datei schließen.

echo ( "<center>" );
echo ( "<br>Owner: " . fileowner ( $file ) ); // Eigentümer
echo ( " | Group: " . filegroup ( $file ) ); // Gruppe
echo ( " | Perms: " . fileperms ( $file ) ); // Rechte
echo ( "<br>Filetime: " . filemtime ( $file ) ); // Letzte Änderung
echo ( " | Filesize: " . filesize ( $file ) ); // Größe der Datei
echo ( "</center>" );

unlink ( $file );
 
?>
 

Die PHP-Funktionen zum Dateisystem werden insbesondere für das Datei-Management (Pflege des Datenbestandes) benötigt, wenn etwa veraltete Dateien entfernt und/oder nur neuere Dateien aktualisiert, gesichert oder angezeigt werden sollen.

Testen ( . Syntax Dateiname: name.php, - bspw. perms.php ! . )

 

. Zugriffe auf eine Website zählen .


<?

$path = "/home/www/pub/fh1000/huecker.com/msw/php/samples/arc";
$file = "$path/counter.dat";

if ( file_exists ( $path ) == 0 ) { mkdir ( $path, 0777 ); };
if ( file_exists ( $file ) == 0 ) { touch ( $file ); };

$count = @file ( $file ); // Inhalt von file lesen, - in Array speichern.
$state = $count[0]; // Status einlesen.
++$state; // Zähler um eins erhöhen.

$fp = fopen ( $file, "w" );
@fwrite ( $fp, $state ); // counter.dat aktualisieren.
fclose ( $fp );

echo ( "Sie sind der $state. Besucher dieser Website. | <a href=\"counter.php\">Reload</a>" );
 
?>
 

Die Verwendung dieses Counters auf einer Website ist mindestens ebenso sinnvoll wie die Aussage: - der Mond sei für den Menschen bedeutsamer als die Sonne, da das Licht in der Nacht, wie durchaus allgemein bekannt, dringender benötigt werde.

Testen ( . Syntax Dateiname: name.php, - bspw. counter.php ! . )


Ergänzend zu den Funktionen für das Dateimanagement . Zugriff - Input, Output . können in der PHP-Umgebung auch Unix-/Linux-Befehle genutzt werden, die teilweise schneller und zuverlässiger zum Ziel führen als manche PHP-Funktionen.


--
[ Home | Top ]
[ . Forward . ]
Der Inhalt dieser Seite wurde am 31.08.2024 um 13.34 Uhr aktualisiert.
Navigation Seminare Magic Software Projekte Publikationen Kontakt Home
 
   huecker dot com * Germany | Datenschutz
© 1999, 2024 Franz-Josef Hücker. All Rights Reserved.
Contact Print Page LinkedIn follow me on twitter RSS Feeds & Podcasts