PHP File() Funktion: File_exists, Fopen, Fwrite, Fclose, Fgets, copy, unlink
Was ist eine Datei?
Eine Datei ist einfach eine Ressource zum Speichern von Informationen auf einem Computer.
Dateien werden in der Regel verwendet, um Informationen zu speichern wie;
- Konfigurationseinstellungen eines Programms
- Einfache Daten wie Kontaktnamen gegen die Telefonnummern.
- Bilder, Fotos, etc.
In diesem Lernprogramm, werden Sie lernen.
- PHP Dateiformate unterstützen
- PHP Dateien Funktionen
- PHP File_exists Funktion
- PHP Fopen Funktion
- PHP Fwrite Funktion
- PHP Fclose Funktion
- PHP Fgets Funktion
- PHP Copy Funktion
- Löschen einer Datei
- PHP File_get_contents Funktion
Unterstützung von PHP-Dateiformaten
Die PHP-Dateifunktionen unterstützen eine Vielzahl von Dateiformaten, darunter;
- Datei.txt
- File.log
- File.custom_extension z.B. file.xyz
- File.csv
- File.gif, file.jpg etc
- Dateien bieten eine dauerhafte, kostengünstige Datenspeicherlösung für einfache Daten im Vergleich zu Datenbanken, die andere Software und Kenntnisse zur Verwaltung von DBMS-Systemen erfordern.
- Sie möchten einfache Daten wie Serverprotokolle zum späteren Abruf und zur Analyse speichern
- Sie möchten Programmeinstellungen speichern d.h. program.ini
PHP-Dateifunktionen
PHP bietet mit seiner reichhaltigen Sammlung an eingebauten Funktionen eine bequeme Möglichkeit, mit Dateien zu arbeiten.
Betriebssysteme wie Windows und MAC OS unterscheiden nicht zwischen Groß- und Kleinschreibung, während Linux- oder Unix-Betriebssysteme zwischen Groß- und Kleinstschreibung unterscheiden.
Eine Namenskonvertierung wie z.B. nur Kleinbuchstaben für die Dateibenennung zu verwenden, ist eine gute Praxis, die maximale plattformübergreifende Kompatibilität gewährleistet.
Lassen Sie uns nun einen Blick auf einige der am häufigsten verwendeten PHP-Dateifunktionen werfen.
PHP File_exists Funktion
Diese Funktion wird verwendet, um festzustellen, ob eine Datei existiert oder nicht.
- Sie ist nützlich, wenn wir wissen wollen, ob eine Datei existiert oder nicht, bevor wir sie verarbeiten.
- Sie können diese Funktion auch verwenden, wenn Sie eine neue Datei erstellen und sicherstellen wollen, dass die Datei nicht bereits auf dem Server existiert.
Die file_exist Funktion hat die folgende Syntax.
<?phpfile_exists($filename); ?>
HIER,
- „file_exists()“ ist die PHP-Funktion, die true zurückgibt, wenn die Datei existiert und false, wenn sie nicht existiert.
- „$file_name“ ist der Pfad und Name der zu prüfenden Datei
Der folgende Code verwendet die Funktion file_exists, um festzustellen, ob die Datei my_settings.txt existiert.
<?phpif (file_exists('my_settings.txt')) { echo 'file found!'; } else { echo 'my_settings.txt does not exist'; } ?>
Speichern Sie den obigen Code in einer Datei mit dem Namen file_function.php Angenommen, Sie haben die Datei im Ordner phptuts in htdocs gespeichert, dann öffnen Sie die URL http://localhost/phptuts/file_function.php in Ihrem Browser und Sie erhalten das folgende Ergebnis.
PHP Fopen Funktion
Die fopen Funktion wird zum Öffnen von Dateien verwendet. Sie hat die folgende Syntax
<?phpfopen($file_name,$mode,$use_include_path,$context); ?>
Hier,
- „fopen“ ist die PHP-Funktion zum Öffnen von Dateien
- „$file_name“ ist der Name der zu öffnenden Datei
- „$mode“ ist der Modus, in dem die Datei geöffnet werden soll, die Tabelle unten zeigt die Modi
Modus | Beschreibung |
---|---|
r |
|
r+ |
|
w |
|
w+ |
|
a |
|
a+ |
|
- „$use_include_path“ ist optional, Standard ist false, wenn auf true gesetzt, sucht die Funktion auch im Include-Pfad.
- „$context“ ist optional, kann verwendet werden, um die Kontextunterstützung anzugeben.
PHP Fwrite-Funktion
Die fwrite-Funktion wird zum Schreiben von Dateien verwendet.
Sie hat folgende Syntax
<?phpfwrite($handle, $string, $length);?>
HIER,
- „fwrite“ ist die PHP-Funktion zum Schreiben in Dateien
- „$handle“ ist die Dateizeiger-Ressource
- „$string“ sind die Daten, die in die Datei geschrieben werden sollen.
- „$length“ ist optional, kann verwendet werden, um die maximale Dateilänge anzugeben.
PHP Fclose Funktion
Sie wird verwendet, um eine Datei in php zu schließen, die bereits geöffnet ist
Sie hat die folgende Syntax.
<?phpfclose($handle); ?>
HIER,
- „fclose“ ist die PHP-Funktion zum Schließen einer offenen Datei
- „$handle“ ist die Dateizeiger-Ressource.
Schauen wir uns nun ein Beispiel an, das „my_settings.txt“ erstellt.
Wir werden die folgenden Funktionen verwenden.
- „fopen“
- „fwrite“
- „fclose“
Der folgende Code „create_my_settings_file.php“ implementiert das obige Beispiel.
Eine Datei öffnen |
<?php $fh = fopen("my_settings.txt", 'w')ordie("Failed to create file"); ?> |
Schließen einer Datei |
<?phpfclose($fh);?> |
Datei erstellen |
<?php $fh = fopen("my_settings.txt", 'w') or die("Failed to create file"); $text = <<<_END localhost;root;pwd1234;my_database _END; fwrite($fh, $text) or die("Could not write to file"); fclose($fh); echo "File 'my_settings.txt' written successfully"; ?> |
Testen des Codes
Öffnen Sie die URL http://localhost/phptuts/create_my_settings.php in Ihrem Browser.
Sie erhalten die folgende Seite
Hinweis: Wenn Ihre Festplatte voll ist oder Sie keine Berechtigung zum Schreiben von Dateien haben, erhalten Sie eine Fehlermeldung.
Schalten Sie zurück zur URL http://localhost/phptuts/file_function.php .
Welche Ergebnisse erhalten Sie?
PHP Fgets-Funktion
Die fgets-Funktion wird verwendet, um php-Dateien zeilenweise zu lesen. Sie hat die folgende grundlegende Syntax. fgets($handle); HIER,
- „$fgets“ ist die PHP-Funktion zum Lesen von Dateizeilen
- „$handle“ ist die Dateizeiger-Ressource.
Schauen wir uns nun ein Beispiel an, das die Datei my_settings.txt mit Hilfe der Funktionen fopen und fgets liest.
Der folgende Code read_my_settings.php implementiert das obige Beispiel.
<?php$fh = fopen("my_settings.txt", 'r') or die("File does not exist or you lack permission to open it");$line = fgets($fh);echo $line; fclose($fh); ?>
HIER,
- Die Funktion „fopen“ gibt den Zeiger auf die im Dateipfad angegebene Datei zurück
- Die Funktion „die()“ wird aufgerufen, wenn ein Fehler auftritt. Sie zeigt eine Meldung an und beendet die Ausführung des Skripts
PHP-Kopierfunktion
Die PHP-Kopierfunktion wird verwendet, um Dateien zu kopieren. Sie hat die folgende grundlegende Syntax. copy($file,$copied_file); HIER,
- „$file“ gibt den Dateipfad und den Namen der zu kopierenden Datei an.
- „kopierte_datei“ gibt den Pfad und den Namen der kopierten Datei an
Der folgende Code veranschaulicht die Implementierung
<?phpcopy('my_settings.txt', 'my_settings_backup.txt') or die("Could not copy file");echo "File successfully copied to 'my_settings_backup.txt'"; ?>
Löschen einer Datei
Die Funktion unlink wird zum Löschen der Datei verwendet. Der folgende Code veranschaulicht die Implementierung.
<?phpif (!unlink('my_settings_backup.txt')){ echo "Could not delete file"; }else{ echo "File 'my_settings_backup.txt' successfully deleted"; } ?>
PHP-Funktion file_get_contents
Die Funktion file_get_contents wird verwendet, um den gesamten Dateiinhalt zu lesen.
Der folgende Code zeigt die Implementierung.
Der Unterschied zwischen file_get_contents und fgets ist, dass file_get_contents die Dateidaten als String zurückgibt, während fgets die Datei zeilenweise liest.
<?phpecho "<pre>"; // Enables display of line feedsecho file_get_contents("my_settings.txt");echo "</pre>"; // Terminates pre tag?>
Zusammenfassung
- Eine Datei ist eine Ressource zum Speichern von Daten
- PHP hat eine reichhaltige Sammlung von eingebauten Funktionen, die die Arbeit mit Dateien vereinfachen.
- Gängige Dateifunktionen sind fopen, fclose, file_get_contents
- Die folgende Tabelle zeigt eine Zusammenfassung der behandelten Funktionen
Funktion | Beschreibung |
---|---|
File_exists | Wird verwendet, um festzustellen, ob eine Datei existiert oder nicht |
fopen | Wird zum Öffnen einer Datei verwendet. Gibt einen Zeiger auf die geöffnete Datei zurück |
fwrite | Wird verwendet, um in Dateien zu schreiben |
fclose | Wird verwendet um geschlossene Dateien zu öffnen |
fgets | Wird verwendet, um eine Datei zeilenweise zu lesen |
copy | Wird verwendet, um einer bestehenden Datei |
unlink | Wird verwendet, um eine bestehende Datei zu löschen |
file_get_contents | Wird verwendet um den Inhalt einer Datei als String zurückzugeben |