Bonjour,
Je suis en train de reprendre un site existant, sans pouvoir trop modifier la base de données. Dans une table, il y a des enregistrements écrits en html, avec du texte, des div pour la mise en page et une table en html, ci-dessous variable $tx. Je voudrais simplifier tout cela en récupérant les différents éléments.
Le bout de code suivant récupère les entêtes de la table :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
        $dom = new DOMDocument;
        $dom->loadHTML($tx);
        $tr=$dom->getElementsByTagName('tr');
        foreach ($tr as $key1=>$ligne) {
            $th=$ligne->getElementsByTagName('th');
            foreach ($th as $key2=>$entete) {
                $cell[$key1][$key2]= utf8_decode($entete->nodeValue);
                echo $cell[$key1][$key2].' ';
            }
         }
Il suffit de faire de même pour les <td> et c'est bon.
Il me faut cette fois récupérer le texte sans la table, c'est à dire supprimer le noeud table de $tx, et là, je sèche. Il y a bien la solution explode('<table'>,..), mais ce n'est pas possible car les balises table peuvent comporter des attributs de style. Un petit coup de main serait le bienvenu.