Bonjour,
Le script suivant doit le permettre de récupérer les différentes information contenue dans un fichier XML. Cependant je n'arrive pas à récupérer le zupid de ma balise <product>.
Voici un exemple de mon fichier XML:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20<?xml version="1.0" encoding="utf-8" ?> - <products xmlns="http://zanox.com/productdata/exportservice/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://zanox.com/productdata/exportservice/v1 http://productdata.zanox.com/exportservice/schema/export-1.0.xsd"> - <product zupid="dcf89e09794cbfe39efab5fe12436de8"> <name>Adaptateur secteur allume cigare, Airis</name> <program>1783</program> <number>ds10000003</number> <longDescription>Adaptateur secteur allume cigare, Airis</longDescription> <manufacturer>AIRIS</manufacturer> <price>14.95</price> <terms>n</terms> <shippingHandlingCost>0.00</shippingHandlingCost> <lastModified>2010-08-09T10:38:00</lastModified> <smallImage>http://s2.static69.com/m/image-offre/1/7/1/8/171875b99e21a6282544356ab5b98631-60x60.jpg</smallImage> <mediumImage>http://s1.static69.com/m/image-offre/1/7/1/8/171875b99e21a6282544356ab5b98631-200x200.jpg</mediumImage> <deliveryTime>en stock</deliveryTime> <currencyCode>EUR</currencyCode> <extra1>0.00</extra1> <merchantCategory>PHOTOVIDEO / Adaptateur secteur & allume-cigare</merchantCategory> <deepLink>http://ad.zanox.com/ppc/?15383903C357536930&ULP=[[photovideo&rubrique=wn_adsec&ref=ds10000003&origine=aff]]</deepLink> </product>
et voici mon Script:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
27
28
29 $xml = new XMLReader(); $xml->open('http://productdata.zanox.com/exportservice/v1/rest/15383903C357536930.xml?ticket=6BC791472561713FF023A266542E92402F9010F91C3B3B403233D4911D275D41&gZipCompress=null'); while($xml->read()){ //on identifie les noeud if ($xml->nodeType == XMLREADER::ELEMENT && $xml->localName == "product") { $product = $xml->expand(); //on déroule les information contenu à l'interieur des noeuds $product = new SimpleXMLElement ('<product>' . $xml->readInnerXML() . '</product>'); //on recupere les varibale qui nous interesses $zupid = $product->attributes()->zupid; var_dump($zupid); $prod['nom'] = utf8_decode(str_replace("'","‘" ,$product->name)); $prod['des'] = utf8_decode(str_replace("'","‘" ,$product->longDescription)); $prod['manufacturer'] = utf8_decode(str_replace("'","‘" ,$product->manufacturer)); $prod['sImage'] = utf8_decode($product->smallImage); $prod['mImage'] = utf8_decode($product->mediumImage); $prod['cat'] = utf8_decode (str_replace("'","‘" ,$product->merchantCategory)); $prod['price'] = utf8_decode (str_replace("'","‘" ,$product->price)); $prod['terms'] = utf8_decode (str_replace("'","‘" ,$product->terms)); $prod['shippingHandlingCost'] = utf8_decode($product->shippingHandlingCost); $prod['deliveryTime'] = utf8_decode($product->deliveryTime); $prod['currency'] = utf8_decode($product->currencyCode); $prod['deepLink'] = utf8_decode($product->deepLink); } }
Ma variable $zupid me retourne Null et je ne comprend pas pourquoi.
J'ai essayé pas mal de script trouver à droite à gauche que je ne comprenais pas toujours sans succès.
Si vous une piste pour m'éclairer ce serais super sympa.
Merci beaucoup
Partager