[SimpleXML] récupérations les données des éléments imbriques dans autres éléments XMl - PHP
Bonjour, tout le monde
débutant avec le xml en php, je rencontre un problème avec la récupération des informations qui se trouve entre deux balises qui se trouve eux même entre deux autres balises, je m'explique :
mon XML :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| <?xml version="1.0" encoding="utf-8" standalone="no"?>
<Document>
<test:content>
<nitf:nitf>
<nitf:body>
<nitf:body.content>
<nitf:block>
<nitf:p>bla bla bla bla bla</nitf:p>
</nitf:block>
<nitf:block class="footnote">
<nitf:p>
Lorem ipsum dolor sit amet, facilisis ultricies lorem ridiculus
<nitf:em class="bold">
<nitf:em>Contact :</nitf:em>
</nitf:em> <nitf:br/>
<nitf:em>
moi@moi.com
</nitf:em> <nitf:br/>
Lorem ipsum dolor sit amet, facilisis ultricies lorem ridiculus
</nitf:p>
</nitf:block>
</nitf:body.content>
</nitf:body>
</nitf:nitf>
</test:content>
</Document> |
J'aimerais récuperer le contenu de chaque élément nitf:block mais aussi des éléments qui se trouve de dans c'est à dire <nitf:em>
Résultat final : Lorem ipsum dolor sit amet, facilisis ultricies lorem ridiculus, Contact : moi@moi.com Lorem ipsum dolor sit amet, facilisis ultricies lorem ridiculus
pour l'instant j'ai réussi à récupere que Lorem ipsum dolor sit amet, facilisis ultricies lorem ridiculus (il me manque les infos dans l'élément <nitf:em> ) Lorem ipsum dolor sit amet, facilisis ultricies lorem ridiculus
voici mon code :
Code:
1 2 3 4 5 6 7 8 9
|
$xml = simplexml_load_file("fichier.xml");
$blocks = $xml->xpath('//test:content/nitf:nitf/nitf:body/nitf:body.content/nitf:block/nitf:p');
$id_block = 0;
foreach($blocks as $block)
{
$texte .= "\n<p>".$block[0]."</p>";
} |
J'ai essayé de boucler sur chaque élément <nitf:em> mais ça donne pas les résultats attendue .
Merci beaucoup d'avance pour l'aide
Bonne journée