Gå til innhold

Xml parser. wow armory


Anbefalte innlegg

Jeg har prøvd meg litt fram for å få til noe som kan hente info fra eu.armory.com

Det første jeg har prøvd på er å hente ut en liste over guild members.

 

Det jeg nå har, er en variabel $xml_data som inneholder dette:

<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="/layout/guild-info.xsl"?><page globalSearch="1" lang="en_us" requestUrl="/guild-info.xml">
 <guildKey factionId="1" name="Cause And Effect" nameUrl="Cause+And+Effect" realm="Shattered Halls" realmUrl="Shattered+Halls" url="r=Shattered+Halls&n=Cause+And+Effect"/>
 <guildInfo>
<guild>
  <members filterField="" filterValue="" maxPage="1" memberCount="133" page="1" sortDir="a" sortField="">
	<character class="Hunter" classId="3" gender="Male" genderId="0" level="70" name="Grarl" race="Orc" raceId="2" rank="0" url="r=Shattered+Halls&n=Grarl"/>
	<character class="Druid" classId="11" gender="Male" genderId="0" level="70" name="Mowbray" race="Tauren" raceId="6" rank="1" url="r=Shattered+Halls&n=Mowbray"/>
	<character class="Warlock" classId="9" gender="Male" genderId="0" level="70" name="Davegotsu" race="Undead" raceId="5" rank="1" url="r=Shattered+Halls&n=Davegotsu"/>
	<character class="Paladin" classId="2" gender="Female" genderId="1" level="70" name="Adrieth" race="Blood Elf" raceId="10" rank="1" url="r=Shattered+Halls&n=Adrieth"/>

	<character class="Druid" classId="11" gender="Male" genderId="0" level="70" name="Dakk" race="Tauren" raceId="6" rank="1" url="r=Shattered+Halls&n=Dakk"/>
	<character class="Priest" classId="5" gender="Female" genderId="1" level="70" name="Gjara" race="Troll" raceId="8" rank="1" url="r=Shattered+Halls&n=Gjara"/>

osv...

 

Det jeg nå lurer på, er hvordan jeg kan hente ut for eksempel "name" og "lvl" fra samtlige

guild members. Jeg skal lagre disse og flere av verdiene i databasen, men først må jeg nesten finne ut hvordan jeg kan hente dem fra $xml_data variabelen.

Endret av aenima
Lenke til kommentar
Videoannonse
Annonse
Gjest Slettet-rXRozPkg

Hvis du bruker PHP5 og har SimpleXML tilgjengelig, så kan det gjøres slik:

(ikke testet, dette er skrevet 'fort å gæli')

 

SimpleXML krever at XML'en er i UTF-8 encoding.

 

$xml = simplexml_load_string($xml_data);

if($xml instanceof SimpleXmlElement) {
 foreach($xml->guildInfo->guild->members->character as $character) {
   $attributes = $character->attributes();
   $name = (string) $attributes["name"];
   $level = (string) $attributes["level"];
   doMagicWithDatabase($name, $level, $blahblah);
 }
} else {
 echo "Ooops.";
}

Jeg er ikke helt sikker på om det blir $xml->guildInfo->guild->members->character eller $xml->guild->members->character i foreachløkka siden du bare har en bit av XML-dokumentet her.

Endret av Slettet-rXRozPkg
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...