Code sur écran d'ordinateur

PHP, DOMdocument et xPath pour parser un fichier xml

Lorsque nous devons traiter un XML très grand, il n’est malheureusement pas possible d’utiliser SimpleXML. Heureusement pour cela, nous pouvons utiliser DOMDocument.

Pour ce faire, il suffit de charger le fichier voulu et d’initialiser xpath sur celui-ci avec DOMXPath.

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

Si le XML en question a un namespace, il ne faut pas oublier de le répertorier.

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

Une fois cela fait, on peut commencer à faire nos requêtes xPath.

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

Il est très important que dans la requête xPath, chaque node ait le namespace, dans notre exemple « n »

Laisser un commentaire