web2 logo

Hele bestanden lezen en schrijven met PHP

Gegevens voor een website worden meestal opgeslagen in een database. Het gebruik van bestanden om gegevens op te slaan of op te halen kan echter ook met PHP.

Bestand inlezen als een array

file($naam) De file() functie leest een bestand en vult een array met voor elke regel in het bestand een element van de array.

Bestand inlezen als een string

fi1e_get_contents($naam) De functie file_get_contents leest een bestand en zet het hele bestand in een enkele string.

Bestand inlezen en weergeven op de webpagina

readfile($naam) De functie readfile() leest een bestand en geeft dat weer op de webpagina.

Gegevens in een string wegschrijven in een bestand

file_put_contents ($naam, $data) De functie file_put_contents schrijft een string weg als bestand. Als je een array met tekstregels wil wegschrijven als bestand, dan moet je deze eerst omzetten naar een string met de functie implode().

Voorbeelden

Voorbeelden van gegevens opslaan of ophalen met PHP.

Voorbeeld tekst inlezen in een string

// er wordt geen pad meegegeven, // dus er wordt ingelezen vanuit de huidige map $tekst = file_get_contents('mijnbestand.txt'); // de functie htmlspecialchars() wordt gebruikt om // speciale HTML karakters om te zetten naar entities $tekst = htmlspecialchars($tekst); echo '<div>' . $tekst . '</div>';

Voorbeeld string wegschrijven als bestand

// \n moet tussen dubbele aanhalingstekens staan om // een nieuwe regelteken te zijn $tekst = "Dit is regel 1.\nDit is regel 2.\nDit is regel 3.\n"; // als er geen pad wordt meegegeven, dan wordt de huidige map gebruikt file_put_contents('mijntekst.txt', $tekst);

Voorbeeld bestand inlezen in een array

$namen = file('gebruikers.txt'); foreach ($namen as $naam) { echo '<div>' . $naam . '</div>'; }

Voorbeeld array omzetten naar string en wegschrijven als bestand

$namen = array('Jan' , 'Piet' , 'Marie') ; // array omzetten naar een string met een // \n (nieuwe regelteken) aan het einde van iedere regel // \n moet tussen dubbele aanhalingstekens staan om // een nieuwe regelteken te zijn $namen = implode("\n", $namen); file_put_contents('gebruikers.txt', $namen);

Toegevoegd door: Kees de Keijzer
Twitter: @kdkq

~ php ~

~ Onderwerpen ~

Dit is een website zonder pop-ups

~ Links ~

Design & Development by Cyberwebdesign.nl for web2.nl © 2020.