PHP Parser le XML de l'armurerie (pour faire une récupération de personnages automatique)
Salut salut Smile

Voici un "petit" code simple qui vous permet de récupérer les informations de l'armurerie.
Pourquoi faire cela ? Tout simplement puisque à partir de ça on peu aisément faire un système de récupération de personnage automatique (depuis l'officiel).

Je récupère que les valeurs dont j'ai besoin, mais depuis cela vous pourrez récupérer ce dont vous avez besoin. J'ai un peu commenté le code, pour qu'un débutant puisse s'y retrouver parmi les nombreuses variables utilisées pour faciliter la mise en place.

Au niveau de l'url, il est très important qu'elle ait cette forme :
Citation :http://eu.wowarmory.com/character-sheet.xml?r=Confr%C3%A9rie+du+Thorium&cn=Laito&rhtml=n
Vous l'aurez compri, la partie en grasse est essentielle, la partie en italique est celle à modifier.

Code PHP :
<?php
 error_reporting
(E_ALL);
 
ini_set("display_errors"1); 
  
$dom = new DomDocument;
  
$dom->load("http://eu.wowarmory.com/character-sheet.xml?r=Confr%C3%A9rie+du+Thorium&cn=Laito&rhtml=n");
  
  
///////////////Tag Character
  
$LCharacter $dom->getElementsByTagName("character");
  foreach(
$LCharacter as $character) {
  
  
//Level
  
$level $character->getAttribute("level");
  
  
//Classe (renvoie Priest, Warrior…)
  
$classe $character->getAttribute("class");
  
  
//L'id de la Classe (renvoie un nombre de 1 à 9)
  
$IDclasse $character->getAttribute("classId");
  
  
//Faction
  
$faction $character->getAttribute("faction");
  
  
//L'id de la faction (renvoie 0 pour alli, 1 pour horde)
  
$IDfaction $character->getAttribute("factionId");
  
  
//Sexe (renvoie 1 pour fille, 0 pour garcon)
  
$sexe $character->getAttribute("sexe");
  
  
//Nom du perso
  
$nom $character->getAttribute("nom");
  
  
//Points hauts-faits
  
$points $character->getAttribute("points");
  
  
//Race (renvoie le nom en anglais)
  
$race $character->getAttribute("race");
  
  
//L'id de la race (revoie un id de 1 à 9)
  
$IDrace $character->getAttribute("raceId");
  
  
//Affiche le tableau pour les tests
  
echo "<h1>Infos sur le perso</h1>";
  echo 
$level." ".$classe." ".$IDclasse." ".$faction." ".$IDfaction." ".$sexe." ".$nom." ".$points." ".$race." ".$IDrace."<br />";
  
  }
  
///////////////Fin Tag Character
  
  
  ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  

  
echo "<h1>Professions (incluant monte)</h1>";
  
  
///////////////Tag professions (affiche les métiers et les compétences de montes)
  
$Lprofession $dom->getElementsByTagName("skill");
  foreach(
$Lprofession as $profession) {
  
  
//Key de la profession (renvoie alchemy, herbalism…)
  
$KeyPro $profession->getAttribute("key");
  
  
//Nom de la profession
  
$NomPro $profession->getAttribute("name");
  
  
//Compétences (points de la professions
  
$CompPro $profession->getAttribute("value");
  
  
//Maximum de points de compétences disponibles pour cette professions
  
$MaxPro $profession->getAttribute("max");
  
  
//Affiche le tableau pour les tests
  
echo $KeyPro." ".$NomPro." ".$CompPro." ".$MaxPro."<br />";
  
  }
  
///////////////Fin Tag profession
  
  
  
  ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  
  
  
echo "<h1>Items</h1>";
  
  
///////////////Tag item
  
$Litem $dom->getElementsByTagName("item");
  foreach(
$Litem as $item) {
  
  
//ID de l'item
  
$IDItem $item->getAttribute("id");
  
  
//Level de l'item
  
$levelItem $item->getAttribute("level");
  
  
//Durabilité de l'item
  
$durabilityItem $item->getAttribute("durability");
  
  
//Durabilité maximum de l'item
  
$MaxDurabilityItem $item->getAttribute("maxDurability");
  
  
//Nom de l'item
  
$nameItem $item->getAttribute("name");
  
  
//L'id de l'enchantement permanant pour l'item
  
$IDpermanantEnchantItem $item->getAttribute("permanentEnchantItemId");
  
  
//Slot de l'item
  
$slotItem $item->getAttribute("slot");
  
  
//Affiche le tableau pour les tests
  
echo $IDItem." ".$levelItem." ".$durabilityItem." ".$MaxDurabilityItem." ".$nameItem." ".$IDpermanantEnchantItem." ".$slotItem."<br/>";
  
  
  }
  
///////////////Fin Tag item

  
  
?>

Voilà Smile à vous de l'utiliser à votre guise !

Sur ce, bonne vacances Smile
Merci Heureux
Merci =)
trop fort merci
Merci Clin
Merci pour le partage Clin
C'est super utile , faudra juste maintenant crée un formulaire qui mettre l'url dans la page et envoie sa par requête ou autre.
merci

Retourner en haut Accueil