Call to a member function xpath() on a non-object, perte balises

Résolu/Fermé
BlueSkyBalmung Messages postés 18 Date d'inscription mardi 22 avril 2014 Statut Membre Dernière intervention 28 juillet 2016 - 24 avril 2014 à 11:03
BlueSkyBalmung Messages postés 18 Date d'inscription mardi 22 avril 2014 Statut Membre Dernière intervention 28 juillet 2016 - 24 avril 2014 à 11:50
j'ai actuellement un problème avec un SimpleXMLElement

$contenuXMLDistant = new DOMDocument();
$contenuXMLDistant->load($cheminXML);
$contenuXML=simplexml_load_string($contenuXMLDistant->saveXML());

(j'ai essayé directement un simplexml_load_file mais ça me faisait la même chose)

lorsque je fais un "echo $contenuXML->asXML();" je ne vois afficher que le contenu de mes balises, mais pas mes balises, et quand je fais un xpath sur n'importe quelle balise, cela me retourne l'erreur dans le titre. Autre chose de bizarre : AsXML marche mais quand je regarde si je suis face à un SimpleXMLElement, instanceof me dit que non.

Ici mon xpath est :
$contenuXML->xpath('//Fiche[@id="'.$id.'"]');
(au cas où ce soit un problème sur le chemin j'avais testé sans l'id ou en ne mettant qu'un slash)

avec en xml :

<?xml version="1.0" encoding="UTF-8"?>
<root>
<Fiche id="3.0154">
<Titre><![CDATA[BlaBla]]></Titre>
...
</Fiche>
</root>

je signale qu'il y a plusieurs fois des balises Titre mais qu'elles sont dans d'autres balises.

Je précise, je n'ai aucun droit de modifier mon XML.

Merci d'avance car je patauge actuellement ...
A voir également:

1 réponse

BlueSkyBalmung Messages postés 18 Date d'inscription mardi 22 avril 2014 Statut Membre Dernière intervention 28 juillet 2016
24 avril 2014 à 11:50
Problème apparemment résolus, cela vient du CDATA il faut les paramètres 'SimpleXMLElement',LIBXML_NOCDATA en plus dans les simplexml_load_string et load_file et ça régle le problème
0