Autor | Zpráva | ||
---|---|---|---|
Dragonw Profil |
#1 · Zasláno: 8. 1. 2010, 14:12:23
Dobrý den mám problém s přečtením datových hodnot ze souboru xml.
XML soubor má následující obsah <TrackVenue>F1WCP1997</TrackVenue> <TrackCourse>San Marino, Imola 1994</TrackCourse> <TrackEvent>Imola, GP San Marino</TrackEvent> <TrackLength>4929.4</TrackLength> <GameVersion>1.255</GameVersion> Vytvořil jsem čtecí funkci, ale ta mě vypíše všechny data na který narazí mezi jakýmikoliv elementy. $parser=xml_parser_create(); xml_set_character_data_handler ($parser, "znaky"); xml_set_element_handler ($parser, "PocatecniZnacka", "KoncovaZnacka"); if (!($obsahsouboru = fopen($url_souboru, "r"))) die("Nemohu otevřít XML pro čtení."); while ($data = fread($obsahsouboru, 2)) xml_parse($parser, $data, feof($obsahsouboru)); function PocatecniZnacka ($parser, $nazev, $atributy){} function znaky ($parser, $data) {echo "$data";} function KoncovaZnacka ($parser, $nazev) {} xml_parser_free($parser); Za boha nemůžu přijít na to, jak by šlo vypsat jen jednotlivou část mezi přesnými elementy. Např.: že chci vypsat jenom F1WCP1997 , která se nachází mezi elementy(tagy) TrackVenue (v xml <TrackVenue></TrackVenue>). S pozdravem Dragon |
||
panhuhu Profil |
#2 · Zasláno: 8. 1. 2010, 16:42:08
SimpleXML si zkousel? Podle meho nazoru idealni reseni.
|
||
Dragonw Profil |
#3 · Zasláno: 8. 1. 2010, 17:13:27
Zloušel jsem aji DOC čtení souborů, ale kvůli složitosti jsem to vzdal. Siml jsem pořád přehlížel a nakonec se podařilo, tudiž ti musim poděkovat za připomínku.
Nakonec je to aji jednodušší a kratší řešení než to nad čím jsem celou dobu doumal, takže mi to už funguje. Stačilo jen tohle. $xml=simplexml_load_file("soubor.xml"); echo $xml->ELEMENT->TrackVenue; A obsah F1WCP1997 se mi vypsal. Díky a kdyžtak můžete lock. |
||
mckay Profil |
#4 · Zasláno: 8. 1. 2010, 17:18:08
Dragonw:
„Díky a kdyžtak můžete lock“ Jestli tím lock, myslíš zamknout, můžeš to udělat i sám. |
||
Časová prodleva: 14 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0