Bonjour,
Suite de ce précédent topic.
J'ai réussi à extraire mes données via une requête Xpath. J'aimerais maintenant les manipuler. J'aimerais savoir si il était possible de récupérer la valeur et le code HTML contenu dans le "nodeValue" ?
Voici le code :
Ce code m'affiche :
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 <?php $url=' <h2 class="title_lowercase">MATERIEL 1</h2> <h2>Général</h2> <div class="carac"> <table class="description"> <tr> <td>Info 1</td> <td class="td-desc"> <ol> <li>Valeur 1</li> <li>Valeur 2</li> </ol> </td> </tr> <tr> <td>Info 2</td> <td class="td-desc">Valeur 2</td> </tr> </table> </div> '; $dom = new DOMDocument(); @$dom->loadHTMLFile($url); $xpath = new DOMXPath($dom); $caracteristiques = array(); // info => valeur $caracteristiques_entries = $xpath->query('//table[@class="description" and position() = 1]/tr'); // //h3/following-sibling::node[1]/tr foreach($caracteristiques_entries as $entry){ $caracteristiques[$entry->childNodes->item(0)->nodeValue] = $entry->childNodes->item(2)->nodeValue; } echo '<pre>'; print_r($caracteristiques); echo '</pre>';
Mais sans le code HTML, donc je n'ai pas la possibilité de séparer les deux valeurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 [Info 1] => Valeur 1 Valeur 2 [Info 2] => Valeur 2
Sachant que je ne sais pas par avance si la valeur contient du code HTML !
Je trouve très peu d'information sur la facon de lire le résultat d'une requête Xpath. Auriez vous des infos la dessus ? J'arrive à deviner le fonctionnement de cette ligne, mais sans plus.
Partager