webForumDet fria alternativet

XML och få fram namnet med id:et

PHP

2 svar · 226 visningar · startad av WiZzLeR

Medlem sedan juni 2002346 inlägg
Frågan#1

http://wow.allakhazam.com/profile.html?47983

Här finns det en profil med en massa data samlad från spelet World of Warcraft. Hursomhelst så läser jag in XML filen (http://wow.allakhazam.com/profile.xml?47983) just nu men jag undrar om det är möjligt att ta t.ex

<Finger0Slot>12548</Finger0Slot>

och få fram namnet från http://wow.allakhazam.com/db/item.html?witem=12548

eller är det något ni inte skulle rekommendera?

Medlem sedan jan. 20021 122 inlägg
#2

Börja med att läsa in xml-dokumentet och sen objektets (ringen i detta fall) nummer

$xml = simplexml_load_string($adress);
$ring = $xml->Finger0Slot;

Sen får du plocka motsvarande sida (.../db/item.html?witem=$ring)

$witempage = "http://wow.allakhazam.com/db/item.html?witem=$ring";
$witemcontents = file_get_contents($witempage);

Sen får man hitta några taggar eller annat som alltid finns runt ett namn, som du kan skriva ett RegExp för. Därefter

preg_match($minRegExp, $witemcontents, $witemcontents);

Så har du ditt namn.

Medlem sedan juni 2002346 inlägg
#3

Nja det fungerade inte att läsa in.

Warning: Entity: line 1: parser error : Start tag expected, '<' not found in /var/www/wwwclarity/modules/test.php on line 4

Warning: http://wow.allakhazam.com/profile.xml?47983 in /var/www/wwwclarity/modules/test.php on line 4

Warning: ^ in /var/www/wwwclarity/modules/test.php on line 4

jag försöker läsa in följande:
$adress = "http://wow.allakhazam.com/profile.xml?47983";

261 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)