Branje XML datoteke in izpisovanje vsebine s php

XML kratica oziroma z drugimi besedami eXtensible Markup Language je označevalni jezik, ki se uporablja za shranjevanje in prenos podatkov. In prav zato se XML veliko uporablja kot vir za pridobivanje/branje oz. parsanje določenih podatkov iz kakšnih spletnih strani – npr. vremenski podatki, podatki tečajnih list itd. Kako pa vse to povežemo skupaj s PHP pa vam bom predstavil v nadaljevanju.

Torej za začetek moramo najprej na spletu poiskati nek javno dostopen xml dokument iz katerega bomo brali podatke in jih nato prikazovali na spletni strani. In ker smo v začetku ravno omenili tečajno listo bom kar uporabil tečajno listo v xml formatu, ki je dostopna tukaj.

Za branje xml vsebine lahko uporabimo več različnih knjižnic oziroma funkcij. Sam sem izbral kar vgrajeno funkcijo v php-ju (verzija 5.4.3) lahko pa bi uporabil npr. SimplePie, SimpleXML ali katerokoli drugo.

Za začetek je potrebno shraniti oziroma sparsati vsebino iz xml-ja v neko spremenljivko.

Sedaj je torej vsa vsebina shranjena v $xml spremenljivki. V kolikor želimo preveriti, če je to res, enostavno naredimo dump spremenljivke.

in izpisala se nam bo vsa vsebina.

No sedaj je pa vse zgolj stvar okusa. Vsebina je sparsana in vse kar je sedaj potrebno storiti zato, da bo vsebina prikazana na naši spletni strani je to, da izpišemo poljubne atribute oz. samo vrednosti.

To najlažje storimo s foreach zanko in recimo, da še želimo imeti vrednosti zapisane v tabeli.

Torej da še razložim postopek.

S pomočjo foreach zanke se sprehodimo skozi vse vnose oz. elemente xml-ja in pri tem shranjujemo vrednosti in sicer za dva atributa (oznaka, šifra) ter samo vrednost elementa <tecaj> kot $valuta. Kot lahko vidite sem na koncu zgolj vsako vrednost še izpisal ter izven zanke zaključil oz. zaprl značko za tabelo.

Ok, mogoče za konec še želimo da se nam izpiše datum, ko se je tečajna lista zadnjič osvežila – podatek se nahaja v elementu <tecajnica datum=”vrednost“> in da je datum prikazan v slovenskem formatu.

Tako, upam da ste se s pomočjo tega primera naučili kako s pomočjo PHP izpišemo vrednosti iz XML dokumenta.