Rechercher : dans
Par :

Parser du XML avec PHP

Dernière réponse le 2 jui 2009 à 13:11:28 Yon, le 2 jui 2009 à 12:03:35 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un fichier xml a parser (jusque la tout vas bien).
Mon problème est lorsque je veux exploité le résultat.
J'ai besoin de recuperer la valeur de certaine balise pour les enregistrer dans ma DB mais des que j'essai d'exploiter la variable j'ai cette erreur :

"Catchable fatal error: Object of class DOMElement could not be converted to string in xxx\tools\temp.php on line 205"

voici mon code (enfin une parti semblant pertinente )

$dom = new DomDocument;
$dom->load($file);
$orderParty = $dom->getElementsByTagName('BuyerParty')->item(0);

$contact = $orderParty->getElementsByTagName('OrderContact');
foreach($contact as $infoContact)
$contactName = $infoContact->getElementsByTagName('ContactName');
$listNumber = $infoContact->getElementsByTagName('ListOfContactNumber');
foreach($listNumber as $listNumber)
$contactNumber = $listNumber->getElementsByTagName('ContactNumber');
foreach($contactNumber as $valName)
//Fonctionne
echo $valName->firstChild->nodeValue . "<br />";
//Ne fonctionne pas
$test = $valName->firstChild->nodeValue . "<br />";
echo $test ;

C'est la premiere fois que je parse du xml et j'avou être un peu larger pour le moment.

Merci pour votre aide.

Yon

Configuration: Windows Vista
Firefox 3.0.11

Meilleures réponses pour « Parser du XML avec PHP » dans :
PHP - Parser du XML Voir Introduction à XML PHP permet l'analyse syntaxique (parsage ou parsing en anglais) d'un document XML. Le langage XML (eXtensible Markup Language, traduisez Langage à balises extensibles) est un métalangage, c'est-à-dire un langage permettant de...
[PHP] Parse error, unexpected T_STRING, expecting ',' or ';' VoirCette erreur, fréquente, se produit notamment lorsqu'un guillemet est présent dans une chaîne délimitée par ce même type de guillemets, par exemple :
Parser un fichier binaire en PHP VoirSupposons que vous ayez enregistré des données binaires dans un fichier, c'est-à-dire un enregistrement brut qui n'est pas traduit en texte. C'est une chose que l'on fait couramment avec certains langages de bas niveau comme le C ou le...
Télécharger Notepad2 VoirNotepad2 est un bloc-note sans installation libre possédant des fonctionnalités avancées de coloration syntaxique. Fonctionnalités Coloration syntaxique pour les langages suivants : HTML, XML, PHP, ASP (JScript, VBS), CSS, JavaScript, VBScript,...
DOM (Document Object Model) et SAX (Simple API for XML) VoirXML permet de définir la structure du document uniquement, ce qui permet d'une part de pouvoir définir séparément la présentation de ce document, d'autre part d'être capable de récupérer les données présentes dans le document pour les...
Introduction à XML VoirPrésentation de XML XML (entendez eXtensible Markup Language et traduisez Langage à balises étendu, ou Langage à balises extensible) est en quelque sorte un langage HTML amélioré permettant de définir de nouvelles balises. Il s'agit effectivement...

1

yon666, le 2 jui 2009 à 12:31:53

No more.

A force de chercher j'ai fini par y arriver.

Ty

Répondre à yon666

2

Flachy Joe, le 2 jui 2009 à 13:03:16

Ben donne quand même l'info pour les suivants, et marque le sujet comme résolu.

Merci. ;-) Flachy Joe ;-)
" Il n'y a aucune limite (son, lumière, zéro absolu, principe d'exclusion de Pauli) que l'esprit de l'homme ne puisse franchir dans un calcul foireux. " Inconnu

Répondre à Flachy Joe

3

 yon666, le 2 jui 2009 à 13:11:28

En fait la section que je dit ne pas fonctionné, marche très bien, mon erreur était a une autre ligne...

Je ne peu pas éditer mon premier message car je l'ai posté en anonyme.

Sinon pour commenter mon erreur et sa 'solution'.
Je cherchai a utiliser directement l'objet soit $valname dans mon exemple ($valName->firstChild->nodeValue)
et $valname ne pouvait être converti en string pour une quelconque utilisation.
Mais si je je l'enregistre dans une variable ($test = $valName->firstChild->nodeValue) Cette variable peu être exploiter.

Peu être le b a ba des objets mais ne les ayant jamais trop manipulé ...

Répondre à yon666