J'ai un petit fichier XML:PHP SimpleXML avec XPath
<wddxPacket version='1.0'>
<header/>
<data>
<struct type='coldfusion.runtime.ArgumentCollection'>
<var name='HEADLINE'>
<string>Richard Barret's Articles on Leadership and High Performance Organisations</string>
</var>
</struct>
</data>
</wddxPacket>
J'essaie d'utiliser PHP SimpleXML et XPath pour extraire la valeur entre l'élément de chaîne dans le nom var élément HEADLINE. Ce code fonctionne:
// Location of the XML file on the file system
$file = 'http://10.10.200.37/skins/importscript/41802.xml';
$xml = simplexml_load_file($file);
// CREATE THE ARRAYS FOR EACH XML ELEMENT NEEDED
$title = $xml->xpath('//var[@name="HEADLINE"]');
echo "<p>";
print_r($title);
echo "</p>";
Le problème est qu'il renvoie non seulement la valeur, mais aussi toutes les informations de tableau. Comme dans:
Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [name] => HEADLINE ) [string] => Richard Barret's Articles on Leadership and High Performance Organisations ) )
Comment puis-je obtenir pour revenir juste la valeur et rien d'autre?
Si je remplace print_r
par echo $title;
, j'obtiens le mot Array sur la page au lieu de la valeur. Si j'essaye echo $title[0];
je n'ai rien du tout.
J'ai essayé tellement de choses maintenant ne peux pas penser à autre chose! Qu'est-ce que je fais mal? Quelqu'un pourrait-il me pointer dans la bonne direction? Merci!
+1. Un autre vote supplémentaire et votre premier badge gagné sur Stack Overflow est [Self-Learner]. Cela vous mettrait dans un cercle plutôt exclusif - actuellement, seulement 262 sur plus de 117 000 utilisateurs l'ont. ;) – Tomalak