Opslaan in XML

Een andere manier om geneste items op te slaan is XML. Dit is eigenlijk precies waar XML voor bedoeld is. Het XML-document zou er dan zo uit kunnen zien:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version=1.0 encoding=UTF-8?>
<menu>
  <pagina naam=Informatie>
    <pagina naam=Nieuws/>
    <pagina naam=FAQ>
      <pagina naam=Wat is PHPhulp?/>
      <pagina naam=Auteursrechten/>
      <pagina naam=Hoe voeg ik iets toe?/>
      <pagina naam=Welke codes kan ik gebruiken?>
        <pagina naam=Ignore/>
        <pagina naam=Teksten>
      </pagina>
    </pagina>
    <pagina naam=Over PHPhulp/>
  </pagina>
  <pagina naam=PHP stuff>
    <pagina naam=PHP tutorials/>
    <pagina naam=PHP scripts/>
    <pagina naam=PHP boeken/>
  </pagina>
  <pagina naam=Forum/>
  <pagina naam=Contact/>
</menu>

Het grote voordeel hiervan is dat je in het XML-bestand ook meteen de structuur ziet. In de database zie je die niet. Nadeel is wel weer dat het voor de meeste PHP’ers moeilijker is, omdat een database over het algemeen vaker wordt gebruikt dan een XML-bestand.

Opslaan en uitlezen
Het opslaan en uitlezen van een XML-bestand ga ik hier niet behandelen. Misschien dat ik over een tijdje wel een tutorial schrijf over hoe je dit met XML kunt aanpakken, maar voor nu vind ik dat ik al genoeg geschreven heb.

Als je meer wilt weten over PHP en XML, moet je maar even googelen, er zijn genoeg goede tutorials over te vinden. Ik heb het hier genoemd, zodat jullie zien dat de manier die ik in deze tutorial heb gebruikt niet de enige manier is om zo'n probleem aan te pakken.

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Inleiding
  2. Wat zijn geneste items?
  3. Geneste items opslaan
  4. Geneste items ophalen
  5. Opslaan in XML
  6. Slotwoord en referenties

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.