Bonjour à tous,
je suis débutant en XML et je dois pouvoir parser un document XML que l'on ma donné, le voici :
Mon fichier PHP pour le parser doit ressembler plus ou moins à ça mais je comprends pas grand chose
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 <?xml version="1.0" encoding="UTF-8" ?> <FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult"> <ERRORCODE>0</ERRORCODE> <PRODUCT BUILD="08-11-2005" NAME="FileMaker Pro" VERSION="8.0v1"/> <DATABASE DATEFORMAT="D/m/yyyy" LAYOUT="" NAME="RANGES" RECORDS="54" TIMEFORMAT="k:mm:ss "/> <METADATA> <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="range_id" TYPE="NUMBER"/> <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Libellé gamme" TYPE="TEXT"/> </METADATA> <RESULTSET FOUND="5"> <ROW MODID="51" RECORDID="1"> <COL> <DATA>1</DATA> </COL> <COL> <DATA>DD ICE</DATA> </COL> </ROW> <ROW MODID="51" RECORDID="2"> <COL> <DATA>2</DATA> </COL> <COL> <DATA>DD AluICE</DATA> </COL> </ROW> <ROW MODID="51" RECORDID="3"> <COL> <DATA>3</DATA> </COL> <COL> <DATA>DD Silverdrive</DATA> </COL> </ROW> <ROW MODID="52" RECORDID="4"> <COL> <DATA>4</DATA> </COL> <COL> <DATA>DD FireRack</DATA> </COL> </ROW> <ROW MODID="51" RECORDID="5"> <COL> <DATA>5</DATA> </COL> <COL> <DATA>DD Cryptodisk</DATA> </COL> </ROW> </RESULTSET> </FMPXMLRESULT>(c'est un fichier qui traite un autre document XML que celui ou j'ai copié le code)
Si vous avez une méthode plus facile libre à vous, si qq pouvait m'apporter de l'aide svp ce serait super sympa
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
30
31
32
33
34
35
36
37
38
39
40
41 <? $xml_file = 'test.xml'; if ( is_file($xml_file) ) { if ($FMPDSORESULT = simplexml_load_file($xml_file)) { foreach($FMPDSORESULT->product as $product) { $product_id = intval($product->id); $product_type = $product->type; $product_capacity = $product->capacity; $product_stock = $product->stock; $product_prices = $product->prices; $product_prices_array = array(); foreach ($product_prices->price as $price) { $product_prices_array[] = array( 'cat' => $price['cat'], 'price' => $price ); } echo "<br><br>product_id : $product_id"; echo "<br>product_type : $product_type"; echo "<br>product_capacity : $product_capacity"; echo "<br>product_stock : $product_stock"; echo "<br>product_prices : "; for ($i=0; $i<count($product_prices_array); $i++) { echo $product_prices_array[$i]['cat'] . ":" . $product_prices_array[$i]['price'] . " "; } } } else { echo "Le fichier XML spécifié ($xml_file) semble mal formaté."; } } else { echo "Le fichier XML spécifié ($xml_file) n'a pas été trouvé ."; } ?>![]()
Partager