Bonsoir à tous,

Je cherche à écrire une fonction qui analyse ma page complète et localise les balises <a></a>. Mon but est ensuite de récupérer chaque paramètre de href ainsi que leur valeur associé.
Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<html>
...
<a href="index.php?id=20&amp;test=valTest" ...>mon Lien </a>
...
</html>
Je voudrais alors récupérer (sous une forme équivalente évidemment) :
id => 20 et test => valTest.

Pour le moment je n'ai réussi qu'à pondre le code suivant, si quelqu'un trouve mieux, et notamment en un seul preg_match_all je pense (donc la clé regExp ...) ça pourrait le faire

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
// Récupérer les liens à l'aide d'une expression régulière
        if(preg_match_all(                    
            '#<a href="index.php\?((([a-z0-9]+=[a-z0-9]+)(&amp;)?)+)"([^>]*)>(.+)</a>#Usi',
            $page,
            $matches,
            PREG_SET_ORDER))
        {
            echo "<pre>";
            print_r($matches);
            echo "</pre>";
            foreach($matches as $match)
            {
                if(preg_match_all(                    
                    '#([a-z0-9]+)=([a-z0-9]++)#Usi',
                    $match[1],
                    $smatch,
                    PREG_SET_ORDER))
                {
                    foreach($smatch as $unParam)
                    {
                        echo $unParam[1]; // nom
                        echo $unParam[2]; // valeur
                    }
                }
            }
        }
Merci de m'avoir lu,
et merci à quiconque pourra m'aider