PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Re : Forum Général PHP » Utilisation de simpleXML » 27-06-2012 13:41:00

Pardon, je viens de remplacer mon foreach par


foreach ($xml->channel->item as $i) {
  echo $i->title."</br>";
}
 

et ça marche, par contre j'ai un problème avec l'encodage, comment faire pour que les caractères s'affichent correctement ?

#2 Forum Général PHP » Utilisation de simpleXML » 27-06-2012 13:41:00

yawn
Réponses : 1

Bonjour, j'essaie d'afficher le contenu d'un flux rss mais je n'y parviens pas.

Le fichier xml est le suivant :


<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
  >

<channel>
  <title>Armer Désarmer</title>
  <atom:link href="http://armerdesarmer.wordpress.com/feed/" rel="self" type="application/rss+xml" />
  <link>http://armerdesarmer.wordpress.com</link>
  <description></description>
  <lastBuildDate>Wed, 20 Jun 2012 07:07:16 +0000</lastBuildDate>
  <language>fr</language>
  <sy:updatePeriod>hourly</sy:updatePeriod>
  <sy:updateFrequency>1</sy:updateFrequency>
  <generator>http://wordpress.com/</generator>
<cloud domain='armerdesarmer.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
    <url>http://s2.wp.com/i/buttonw-com.png</url>
    <title>Armer Désarmer</title>
    <link>http://armerdesarmer.wordpress.com</link>
  </image>
  <atom:link rel="search" type="application/opensearchdescription+xml" href="http://armerdesarmer.wordpress.com/osd.xml" title="Armer Désarmer" />
  <atom:link rel='hub' href='http://armerdesarmer.wordpress.com/?pushpress=hub'/>
    <item>
    <title>Jusqu’où les Russes vont ils aller dans leur soutien aux graves violations des droits de l’Homme en Syrie ?</title>
    <link>http://armerdesarmer.wordpress.com/2012/06/19/jusquou-les-russes-vont-ils-aller-dans-le-soutien-aux-graves-violations-des-droits-de-lhomme-en-syrie/</link>
    <comments>http://armerdesarmer.wordpress.com/2012/06/19/jusquou-les-russes-vont-ils-aller-dans-le-soutien-aux-graves-violations-des-droits-de-lhomme-en-syrie/#comments</comments>
    <pubDate>Tue, 19 Jun 2012 18:36:35 +0000</pubDate>
    <dc:creator>veillee2</dc:creator>
        <category><![CDATA[Armes]]></category>
    <category><![CDATA[Uncategorized]]></category>
    <category><![CDATA[droit de l'homme]]></category>
    <category><![CDATA[Russie]]></category>
    <category><![CDATA[Syrie]]></category>
    <category><![CDATA[traité sur le commerce des armes]]></category>

    <guid isPermaLink="false">http://armerdesarmer.wordpress.com/2012/06/19/jusquou-les-russes-vont-ils-aller-dans-le-soutien-aux-graves-violations-des-droits-de-lhomme-en-syrie/</guid>
    <description><![CDATA[Il y a trois jours le navire Russe MV ALead a été arrêté dans la mer du nord de l’Ecosse par le gouvernement britannique. Ce bateau, parti du port Russe de Kaliningrad dans la mer Baltique,  transportait des hélicoptères MI 25 et des munitions pour le gouvernement Syrien. Cet hélicoptère d’attaque Russe est appelé le [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=armerdesarmer.wordpress.com&blog=12798208&post=1019&subd=armerdesarmer&ref=&feed=1" width="1" height="1" />]]></description>
    <wfw:commentRss>http://armerdesarmer.wordpress.com/2012/06/19/jusquou-les-russes-vont-ils-aller-dans-le-soutien-aux-graves-violations-des-droits-de-lhomme-en-syrie/feed/</wfw:commentRss>
    <slash:comments>0</slash:comments>
 
    <media:content url="" medium="image">
      <media:title type="html">veillee2</media:title>
    </media:content>

    <media:content url="http://armerdesarmer.files.wordpress.com/2012/06/mi-251.jpg?w=590" medium="image">
      <media:title type="html">Image</media:title>
    </media:content>
  </item>
    <item>
    <title>République Démocratique du Congo : Le scandale de la guerre oubliée</title>
    <link>http://armerdesarmer.wordpress.com/2012/06/12/republique-democratique-du-congo-la-guerre-oubliee/</link>
    <comments>http://armerdesarmer.wordpress.com/2012/06/12/republique-democratique-du-congo-la-guerre-oubliee/#comments</comments>
    <pubDate>Tue, 12 Jun 2012 18:31:55 +0000</pubDate>
    <dc:creator>veillee2</dc:creator>
        <category><![CDATA[Armes]]></category>
    <category><![CDATA[Amnesty International]]></category>
    <category><![CDATA[kalachnikov]]></category>
    <category><![CDATA[Pascal Kabungulu]]></category>
    <category><![CDATA[république démocratique du Congo]]></category>
    <category><![CDATA[traité sur le commerce des armes]]></category>
    <category><![CDATA[violations des droits de l'homme]]></category>

    <guid isPermaLink="false">http://armerdesarmer.wordpress.com/?p=1000</guid>
    <description><![CDATA[Comme nous l’avons souvent écrit ici, depuis la guerre de août 1998, International Rescue Committee (IRC) évalue le nombre de morts à plus de 5,4 millions de femmes, d’enfants et d’hommes[1]. Lors de mes deux missions sur place avec Amnesty International, nous avons pu observer comment les armes continuaient d’arriver dans la région des grands [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=armerdesarmer.wordpress.com&blog=12798208&post=1000&subd=armerdesarmer&ref=&feed=1" width="1" height="1" />]]></description>
    <wfw:commentRss>http://armerdesarmer.wordpress.com/2012/06/12/republique-democratique-du-congo-la-guerre-oubliee/feed/</wfw:commentRss>
    <slash:comments>0</slash:comments>
 
    <media:content url="" medium="image">
      <media:title type="html">veillee2</media:title>
    </media:content>

    <media:content url="http://armerdesarmer.files.wordpress.com/2012/06/ak-47-chines-sign-2.jpg?w=1024" medium="image">
      <media:title type="html">AK 47 chines sign 2</media:title>
    </media:content>

    <media:content url="http://armerdesarmer.files.wordpress.com/2012/06/kin-3x-go92.jpg" medium="image">
      <media:title type="html">Kin 3X GO9</media:title>
    </media:content>
  </item>
    <item>
    <title>ASER pour un traité sur le commerce des armes qui protège les droits de l’Homme et respecte le droit international humanitaire.</title>
    <link>http://armerdesarmer.wordpress.com/2012/06/05/aser-pour-un-traite-sur-le-commerce-des-armes-qui-protege-les-droits-de-lhomme-et-respecte-le-droit-international-humanitaire-2/</link>
    <comments>http://armerdesarmer.wordpress.com/2012/06/05/aser-pour-un-traite-sur-le-commerce-des-armes-qui-protege-les-droits-de-lhomme-et-respecte-le-droit-international-humanitaire-2/#comments</comments>
    <pubDate>Tue, 05 Jun 2012 20:56:33 +0000</pubDate>
    <dc:creator>veillee2</dc:creator>
        <category><![CDATA[Armes]]></category>
    <category><![CDATA[Afghanistan]]></category>
    <category><![CDATA[droit de l'homme]]></category>
    <category><![CDATA[Libye]]></category>
    <category><![CDATA[république démocratique du Congo]]></category>
    <category><![CDATA[Syrie]]></category>
    <category><![CDATA[traité sur le commerce des armes]]></category>

    <guid isPermaLink="false">http://armerdesarmer.wordpress.com/?p=993</guid>
    <description><![CDATA[ASER tient à informer les nombreux lecteurs du blog Armer Désarmer que nous venons de recevoir notre accréditation officielle pour participer aux négociations du traité sur le commerce des armes ce mois de juillet à l’ONU. Nous serons donc présent cette fois en notre nom. Nous étions jusqu’à maintenant chaleureusement accueillis par le réseau d’action [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=armerdesarmer.wordpress.com&blog=12798208&post=993&subd=armerdesarmer&ref=&feed=1" width="1" height="1" />]]></description>
    <wfw:commentRss>http://armerdesarmer.wordpress.com/2012/06/05/aser-pour-un-traite-sur-le-commerce-des-armes-qui-protege-les-droits-de-lhomme-et-respecte-le-droit-international-humanitaire-2/feed/</wfw:commentRss>
    <slash:comments>0</slash:comments>
 
    <media:content url="" medium="image">
      <media:title type="html">veillee2</media:title>
    </media:content>

    <media:content url="http://armerdesarmer.files.wordpress.com/2012/06/bandeau1.jpg?w=300" medium="image">
      <media:title type="html">bandeau</media:title>
    </media:content>
  </item>

  </channel>
</rss>

Le code que j'utilise est le suivant :

<?php
$xml = simplexml_load_file("http://armerdesarmer.wordpress.com/feed/");

if (!$xml) exit;

echo "<b>Parcours de \$xml->article</b><br />\n";
foreach ($xml->item as $item) {
  echo $item->title;
  echo "t";
}
?>

Le script n'entre pas dans la boucle foreach puisqu'à l'écran je n'ai même pas le "t" qui devrait s'afficher à chaque parcours de la boucle. J'ai bien en revanche le texte "Parcours de..." qui s'affiche donc simplexml_load_file ne retourne pas false...

J'ai testé plusieurs codes dispos sur le web et je ne comprends pas pourquoi cela ne fonctionne pas avec mon fichier xml...

Merci à toute personne susceptible de m'aider, mon problème est assez urgent !

Pied de page des forums

Propulsé par FluxBB