PHP File Open/Read/Close
- Vorige pagina PHP Bestanden
- Volgende pagina PHP Bestand aanmaken/schrijven
In deze sectie leggen we uit hoe u bestanden op de server kunt openen, lezen en sluiten.
PHP Open File - fopen()
Een betere manier om een bestand te openen is via de fopen() functie. Deze functie biedt u meer opties dan de readfile() functie.
In de cursus zullen we het tekstbestand "webdictionary.txt" gebruiken:
AJAX = Asynchronous JavaScript and XML CSS = Cascading Style Sheets HTML = Hyper Text Markup Language PHP = PHP Hypertext Preprocessor SQL = Structured Query Language SVG = Scalable Vector Graphics XML = Uitbreidbare Markup Taal
De eerste parameter van fopen() bevat de naam van het bestand dat moet worden geopend, de tweede parameter bepaalt het openingsmodus van het bestand. Als de functie fopen() het gespecificeerde bestand niet kan openen, zal het volgende voorbeeld een bericht genereren:
Voorbeeld
<?php $myfile = fopen("webdictionary.txt", "r") or die("Kan bestand niet openen!"); echo fread($myfile, filesize("webdictionary.txt")); fclose($myfile); ?>
Tip:We zullen nu de functies fread() en fclose() leren.
Het bestand wordt geopend in een van de volgende modi:
Modus | Beschrijving |
---|---|
r | Een bestand openen voor lezen. De bestandspunt begint aan het begin van het bestand. |
w | Een bestand openen voor schrijven. De inhoud van het bestand wordt verwijderd of een nieuw bestand wordt gemaakt als het niet bestaat. De bestandspunt begint aan het begin van het bestand. |
a | Een bestand openen voor schrijven. De bestaande gegevens in het bestand worden behouden. De bestandspunt begint aan het einde van het bestand. Een nieuw bestand wordt gemaakt als het niet bestaat. |
x | Een nieuw bestand aanmaken voor schrijven. Retourneert FALSE en een foutmelding als het bestand al bestaat. |
r+ | Een bestand openen voor lezen/schrijven met de bestandspunt aan het begin van het bestand. |
w+ | Een bestand openen voor lezen/schrijven. De inhoud van het bestand wordt verwijderd of een nieuw bestand wordt gemaakt als het niet bestaat. De bestandspunt begint aan het begin van het bestand. |
a+ | Een bestand openen voor lezen/schrijven. De bestaande gegevens in het bestand worden behouden. De bestandspunt begint aan het einde van het bestand. Een nieuw bestand wordt gemaakt als het niet bestaat. |
x+ | Een nieuw bestand aanmaken voor lezen/schrijven. Retourneert FALSE en een foutmelding als het bestand al bestaat. |
PHP bestand lezen - fread()
De functie fread() leest een geopend bestand.
De eerste parameter van fread() bevat de naam van het bestand dat moet worden gelezen, de tweede parameter bepaalt het maximum aantal te lezen bytes.
Het volgende PHP-code voorbeeld leest het bestand "webdictionary.txt" tot het einde:
fread($myfile, filesize("webdictionary.txt"));
PHP bestand sluiten - fclose()
De functie fclose() wordt gebruikt om een geopend bestand te sluiten.
Opmerking:Het is een goede programmeer gewoonte om bestanden na gebruik te sluiten. Je wilt niet dat bestanden je serverbronnen verbruiken.
fclose() vereist de naam van het te sluiten bestand (of een variabele die de naam van het bestand bevat):
<?php $myfile = fopen("webdictionary.txt", "r"); // enige code die moet worden uitgevoerd... fclose($myfile); ?>
PHP lezen van een regel bestand - fgets()
De functie fgets() wordt gebruikt om een regel uit een bestand te lezen.
De volgende output geeft de eerste regel van het bestand "webdictionary.txt" weer:
Voorbeeld
<?php $myfile = fopen("webdictionary.txt", "r") or die("Kan bestand niet openen!"); echo fgets($myfile); fclose($myfile); ?>
Opmerking:Na het aanroepen van de fgets() functie, wordt de bestandspunt verplaatst naar de volgende regel.
PHP Controleer End-Of-File - feof()
De feof() functie controleert of de "end-of-file" (EOF) is bereikt.
feof() is zeer nuttig voor het doorlopen van gegevens van onbekende lengte.
Het volgende voorbeeld leest de "webdictionary.txt"-bestand regel voor regel tot het einde van het bestand:
Voorbeeld
<?php $myfile = fopen("webdictionary.txt", "r") or die("Kan bestand niet openen!"); // Output van een regel tot het einde van het bestand while(!feof($myfile)) { echo fgets($myfile) . "<br>"; } fclose($myfile); ?>
PHP Lees enkel karakter - fgetc()
De fgetc() functie wordt gebruikt om een enkel karakter uit het bestand te lezen.
Het volgende voorbeeld leest de "webdictionary.txt"-bestand letterlijk door tot het einde van het bestand:
Voorbeeld
<?php $myfile = fopen("webdictionary.txt", "r") or die("Kan bestand niet openen!"); // Output van een enkel karakter tot het einde van het bestand while(!feof($myfile)) { echo fgetc($myfile); } fclose($myfile); ?>
Opmerking:Na het aanroepen van de fgetc() functie, wordt de bestandspunt verplaatst naar de volgende karakter.
PHP Filesystem Referentiehandleiding
Voor een volledige PHP Filesystem Referentiehandleiding, bezoek a.u.b. de door CodeW3C.com aangeboden PHP Filesystem Referentiehandleiding.
- Vorige pagina PHP Bestanden
- Volgende pagina PHP Bestand aanmaken/schrijven