PHP, DOMdocument et xPath pour parser un fichier xml

Lorsque nous devons traité un xml très grand, il n’est malheureusement pas possible d’utiliser simpleXML. Heureusement pour cela, nous pouvons utiliser DOMdocument.

Pour comment il suffit de loader le fichier voulu et d’initialiser xpath sur celui-ci avec DOMXPath.

$document = new DOMDocument();
$document->load($file);
$xpath = new DOMXPath($document);

Si l’xml en question a un namespace, il ne faut pas oublier de le répertorie.

$xpath->registerNameSpace('n', 'http://www.w3.org/TR/html4/');
Publicités

Une fois cela fait, on peut commencer à faire nos requète xPath.

        $elements = $xpath->query('//n:movie');
        foreach ($elements as $element) {
}

Il est très important que dans la requête xPath chaques nodes ait le namespace, dans notre example « n »

Publicités

Laisser un commentaire