Bestanden openen en lezen

Om een simpel tekst bestand te openen en te lezen is vrij makkelijk om te doen. Je hebt
hier maar 4 regels voor nodig.

Eerst open je het bestand met fopen
Daarna lees je de data er uit met fgets
Hierna sluit je het bestand weer met fclose
En tot slot weergeef je de gegevens die je met de functie fgets eruit hebt gehaald.

Om met deze oefening mee te kunnen doen moet je een webruimte hebben en het bestand test.txt aanmaken en deze de chmod rechten 777 geeft. CHMOD is nodig omdat het bestand moet weten dat er iets in mag worden geschreven, of er iets uit mag worden gelezen. Wanneer je niet weet hoe je dit moet doen kun je eens kijken op http://www.phphulp.nl/php/tutorials/8/54/

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
// ik geef het liefst eerst een variabele aan waarin het bestand staat:
$file = "test.txt";
// open het bestand met 'r' (read)
$fopen = fopen($file, "r");
// haal de tekst eruit
$data = fgets($fopen, 4096);
// sluit het bestand weer af
fclose($fopen);

// weergeef wat in $data staat
echo "$data";
?>


Om meer te lezen over de verschillende 'open' rechten kun je http://www.phphulp.nl/php/tutorials/4/78/ lezen.

De 4096 die je ziet staan bij de functie fgets() is voor de buffer van het bestand. Als je bijvoorbeeld een bestand hebt die 500kB is, en je gebruikt de functie fgets(), zal het erg lang duren voordat alles eruit is gelezen. Met 4096 geeft je aan dat hij regels opent van 4096 bytes.

Wanneer je newlines naar html newlines (<br>'s) wilt hebben kun je de functie nl2br gebruiken. Dit zet dus 'enters' in de tekstfile om naar <br>'s.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?
$data
= nl2br($date);
echo "$data";
?>

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Bestanden openen en lezen
  2. Schrijven naar bestanden

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.