[PHP] o.a. XMLbestand uitlezen

Pagina: 1
Acties:

  • conorach
  • Registratie: Juni 2001
  • Laatst online: 26-11-2021
Om de data uit een XMLbestand te krijgen en dit meteen toe te wijzen aan de tags waar het tussen staat heb ik het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
// File variabelen
$filename = "test.xml";
$readonly = "r";
$f_in = fopen($filename, $readonly);

// Leest een regel in net zolang tot het einde van het bestand bereikt is.
while (!feof ($f_in))
{
      // Hier wordt de regel ingelezen met een maximale lengte van 4096 karakters
    $regel = fgets($f_in, 4096);

    // Hier wordt gekeken of </ in $regel voorkomt
    if (strstr($regel, "</"))
    {
        // Controleert of in $regel de waarde <naam> voorkomt zo ja wordt er een 1 gegeven.
        if (strstr($regel, "<naam>"))
        {
            echo "Naam: <B>";
            // Geeft weer wat er na <naam> komt
            echo strstr($regel, "<naam>");
            echo "</B>";
            echo "<BR>";
        }
        if (strstr($regel, "<school>"))
        {
            echo "School: <B>";
            echo strstr($regel, "<school>");
            echo "</B>";
        }
    }
}

// Bestand sluiten
fclose ($f_in);
?>

Maar gezien de grootte (groot aantal tags met data) van het XMLbestand zou het handiger (en sneller) zijn om dit in een loop te verwerken..

Kan iemand me hier mee helpen?

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Orphix
  • Registratie: Februari 2000
  • Niet online
woei! ik vind het wel erg moedig van je om een parser in PHP te schrijven :Y)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

pff, mietje :+ kan makkelijk :X

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • djc
  • Registratie: December 2001
  • Laatst online: 08-09-2025

djc

Ik heb 2 versies van een dergelijk script die werken zonder expat of domxml. Als je die wil hebben kun je me het best ff meelen.

Rustacean


Verwijderd

Op donderdag 09 mei 2002 19:56 schreef Manuzhai het volgende:
Ik heb 2 versies van een dergelijk script die werken zonder expat of domxml. Als je die wil hebben kun je me het best ff meelen.
Deel ze gewoon met ons alle! :D

  • djc
  • Registratie: December 2001
  • Laatst online: 08-09-2025

djc

Op donderdag 09 mei 2002 19:58 schreef TimD het volgende:
Deel ze gewoon met ons alle! :D
Mkay, ik pleurt ze wel ff online. Ze zijn trouwens wel uitermate beperkt, ik heb alleen maar rekening gehouden met de zaken waar ik ze voor gebruik. Zo is de content van een element OF elementen OF tekst en niet beiden, worden attributen niet geparset en ik houd geen rekening met namespaces. Het is geen perfecte oplossing, maar het werkt voor simpele dingen. :)

Rustacean


  • djc
  • Registratie: December 2001
  • Laatst online: 08-09-2025

djc

Zie http://got.xavamedia.nl/. De node is belangrijk, die wordt door allemaal gebruikt. Verder zijn er dus implementaties met SAX (expat), domxml, preg en een characterstack. Bij de eenvoudige XML documentjes die ik ermee parse geven ze allemaal hetzelfde resultaat. :) De SAX versie is trouwens het snelste, als die module is geinstalleerd is dat dus de beste optie.

Rustacean

Pagina: 1