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 »
